Quick BASICの練習(2)~プログラム・モードでの入力&実行
超初心者のプログラミング学習記事、第4弾。ほとんど予備知識ゼロの状態
から、ここまで3本の記事を書いて来た。正直、アクセス数は期待してなかっ
たが、予想より読者は多いから、関心を持ってる初心者の方々は少なくない
んだろう。
過去の3本は次の通り。ソフトのダウンロード方法その他、基本的な事はあ
まり繰り返さないので、必要ならば以下をご参照あれ。
初めてのプログラミング♪
初めてのプログラミング(2)~計算その他、簡単なバッチファイル
Quick BASICのダウンロード、ダイレクトモード(Immediate)入力と計算
今回はいよいよ、代表的な初心者向けソフト・BASICの1つのヴァージョン、
Quick BASIC(クイック・ベーシック)を使って、プログラミングに挑戦する。
Microsoft(マイクロソフト)社自体が作ったヴァージョンかどうかは不明で、
無料のライセンス供与みたいなものかも知れない。いずれにせよ、合法的
なもののはず。
使用テキストは前回と同じく、少し前の高校数学の教科書、数研出版『数学A』
(1995年版)。教科書の記述のままだと上手く行かないこともあるので、マイ
ナーチェンジの試行錯誤を繰り返すことになる。。
☆ ☆ ☆
初めて作って保存した、記念すべきプログラム「PROG0001」は、下の通り。
ファイル名の拡張子は「.BAS」となってるから、ベーシック・ファイルということ
か。前回のダイレクト(直接)モードでは画面の下側を使ったが、プログラム・
モードでは上側を使用する。要するに、こっちの方が普通ということだろう。
左に通し番号を付ける時、基本的に10ずつ書いてるのは、後で途中に必要
な命令を挿入するため。実際、私も途中で挿入したことがあった。
通し番号の右に、半角スペースを入れて、その右に命令を半角入力。最初に、
A=7という情報を伝えた後、「PRINT A」と命令することで、Aの値をプリント
(=画面表示)させる。プログラムの最後は、終了の命令、「END」(エンド)。
最初の式「A=7」が左右に広がって、スペースが入ってか全角になってるよう
に見えるが、これはソフトが勝手にやってること。私自身は普通に、半角で連
続入力してるだけだ。見やすくするための配慮だろうか。
プログラムの保存作業はほぼ普通通りだが、名前の付け方にかなり制限があ
るようで、2回却下されてしまった。それより問題は、プログラムの「実行」。教科
書では、「RUN」という命令を入力するようになってるけど、私の場合は上手く
行かなかった。よく見ると、上のメニューバーに「Run」と書かれてるから、そこを
クリックして成功。本当はキーボード入力でも、どうにか出来るのかも知れない。
とにかく、プログラムを実行させると、
画面が黒く切り替わって、7とだけ表
示された。適当にキーを押すと、元
の青い画面に戻る。そこで、
「FILE」メニューから「NEW」を選択、新たなプログラミングが可能になる。
☆ ☆ ☆
続いて、2乗の計算プ
ログラム。まず第10
行は、プログラムの実
行時に、Aの値を入力
(INPUT:インプット)
させるように命令する
もの。単に「INPUT A」とするのではなく、「”A=”;」を挟むことで、実行後の
入力待ち画面に「A=?」と表示される。そこで数値を入力してエンター・キー
を押せば、その先まで表示されるのだ。
第20行は、「A=・・・」という形でAの値を表示せよという命令。第25行は、
「A*A=・・・」という形でA×Aの計算結果を表示せよ、という命令。このプロ
グラムを実行(RUN)させて、Aに3を入力すると、
左のように表示される。
ここでも半角スペースが入ってるように見えるが、
ソフトが勝手に表示してることだ。最初に3を入力する時も、私は別に半角ス
ペースは入れてない。
☆ ☆ ☆
次もほぼ同様で、2乗の計算の代わりに平方根(SQUARE ROOT)を計算
させるプログラム。平方
根については、元から
ソフトに入ってる組み込
み関数SQR(X)を使用
した。
実行して、16を入力した結果は左の通り。確か
に、√16の値である4が表示されてる。この辺
りで、ようやくほんの少し慣れを感じて来た。
☆ ☆ ☆
続いて、三角関数。サインの組み込み関数SIN(X)は、角度Xの単位がラジア
ンだから、普通の度数(degree)を入力する場合はラジアンに直す必要がある。
180度でπラジアン、つまり3.14ラジアンだから、度数を180で割って3.14
倍すればいい。教科書では、πの近似値として3.14159を使ってるが、別に
正確な計算をしたい訳ではないから、一目で円周率と分かる3.14を選択した。
第30行の命令の前半で、私が「=」(等号)を入れ忘れたので、角度Aの度数
を30と入力した後の画面は
左の通り。3行目に「=」が
入ってないのだ。
計算結果の0.4997701は、本来のsin30°の値0.5より僅かに小さい値。
もちろん、π=3.1415926535・・・に対して、僅かに小さい3.14を使った
から、ラジアン単位の角度が少し小さくなり、サインの値も少し小さくなるわけだ。
☆ ☆ ☆
さらに、三角関数のcos(コサイン)について、少し違うプログラミングを試して
みた。上のsinと同じ書き方でももちろんいいが、計算を2段階(or3段階)に
分けてある。
まず、度数表示の
角度Aをラジアン
表示の角度Xへと
換算。次に、
cos(X)の値を
Yとおき、最後に
そのYの値を、「COS(A DEGREE)」(コサインA度)として表示させた。
実行して、角度Aに60
度を入力すると、左のよ
うに表示された。ラジア
ン表示の角度が少し小さくなるから、答はcos60°=0.5より少し大きい値、
0.5004596となってる。ちなみに英語で「60度」と言う時は、複数形で
「60 degrees」となるようだ。
☆ ☆ ☆
今回のラストは、「相加平均」と「相乗平均」の比較。教科書の練習問題(答な
し)を自分でやってみたのだ。
2つの数A,Bに対して、加えて2で割った平均が相加平均(A+B)/2。一方、
掛け合わせて平方根を取った平均が相乗平均√(A×B)。0以上のA,Bに対
しては常に、 (相加平均)≧(相乗平均) となる。
今回は2つの数
を入力した後、
その2つと平均
2つ、計4つ表
示させることに
なる。やや不安
だったが、普通にプログラミングしてみると成功した。
ちなみにAとBの入力は、1つ1つ、つまり1行
ずつ進める形。2と8を入力すると、
SOUKA(相加平均)=(2+8)÷2=5、
SOUJOU(相乗平均)=√(2×8)=4。
正しく表示されてるし、確かに相加平均の
方が大きい。
これで、代表的なソフトによるプログラミングが一応、成功したので、最初の壁
を突破したような気分になれた。もちろん、まだまだ超初心者なので、少しずつ
先を目指すとしよう。
それでは、今日はこの辺で。。☆彡
cf. Quick BASICの練習(3)~REM 文、GOTO 文、IF 文、各種トラブル・・
(4)~IF 文、FOR 文、NEXT 文とループ(繰り返し)
(7)~関数値の計算、方程式の近似値
(8)~素数の判別、エラトステネスのふるい
(9)~数列の二項間漸化式と固有値、一般項
(計 3041字)
| 固定リンク | 0
「数学」カテゴリの記事
- 四角形や丸の「真ん中」に正三角形を配置するデザイン(YouTubeほか)、長さ、重心、三角形分割錯視を考慮した視覚調整(2024.09.08)
- パズル「推理」、小学生向け8、カンタンな解き方、表の書き方(難易度3、ニコリ作、朝日be、24年8月31日)(2024.09.01)
- パズル「ナンスケ」解き方13、2024年7月13日の問題は間違い「ではありませんでした」(難易度4、ニコリ作、朝日新聞be)(2024.07.13)
- インドの摩訶不思議な「ヴェーダ数学」、100に近い2つの数の掛け算のやり方、明星学園の中学入試問題(算数)と一般的証明(2024.07.06)
- 2進法の計算、直接的な減法(引き算)と、コンピューター内部で「2の補数」を用いる減算 ~ 高校『情報Ⅰ』(2024.06.04)
「プログラミング」カテゴリの記事
- ps5.js Web Editor(Processing)のプログラミングでお絵描き、アニメーション作成~ 高校教科書『情報 II 』(東京書籍)(2024.08.22)
- Python(パイソン)入門3~乱数を利用した、じゃんけんゲーム作成など(生成AI・ChatGPT4も使用)(2023.10.06)
- Python(パイソン)入門2~高校副教材とオンライン環境Bit Arrow、さらにAI(ChatGPT4)も使用(2023.09.06)
- Python(パイソン)入門1~人気プログラミング言語を高校教科書副教材(東京書籍)とオンライン環境Bit Arrowで簡単に(2023.02.28)
- 令和3年度、文科省・情報活用能力調査の調査問題例と正答(小中高、4年1~2月)、感想とレビュー(2022.12.28)
コメント