8.まずは計算
CH=G@SETUP(640,480,8,1) G@FONT(0,0,0,3,"MSゴシック") G@PRINT(CH,0,0,STR(4+5)) LOOP G@FLIP() ENDLOOP
どうですか、うまく動きましたか?
うまく動いているのならば、ディスプレイ上に真っ黒な背景に「9」と表示されたウインドウ画面が現れているはずです。終了するときには「ESC」ボタンを押すか、ウィンドウ右上の「×」を押してください。
この6行のプログラムが何をしているのかといえば、上から3行目の括弧内にある「4+5」を計算させ画面に表示するだけのプログラムです。
たかだか「4+5」をさせるだけで6行もの訳の分からない命令を記述させなければならないなんて馬鹿馬鹿しい・・・・なんて思わないでくださいね。
だって1〜2行目及び4〜6行目は計算とは関係の無い命令でしてすから。
これについては、今回の趣旨(計算の勉強)がことなるので詳細は後にします。といっても、何も分からないままでは気持ち悪いので簡単に説明しておくと、
1行目はウィンドウ画面の初期化(ウィンドウのサイズを指定している)を、2行目はウィンドウに表示する文字のフォントを指定を、4〜6行目は「ESC」ボタンが押されるまでプログラムが終わらないようにしています。(4〜6行目が無いと画面に結果を表示後一瞬にしてプログラムが終わってしまう)
今回はこのあたりはそんなもんなんだ程度で十分ですから、気にしないでください。(^^;)
ではちょっとずつ計算を高度にして行きましょう。4と5の2たつの計算が出来るのならば、数字を3つにした「4+5*2」も出来るはず。前回と同じように次の6行を実行してみてください。青色の部分が前回から変更となった部分です。
CH=G@SETUP(640,480,8,1) G@FONT(0,0,0,3,"MSゴシック") G@PRINT(CH,0,0,STR(4+5*2)) LOOP G@FLIP() ENDLOOP
どうですか、「14」という結果が出ましたか?
ここで確認を取っておきたいのですが、「4+5*2」の結果が「14」だという事がどうも理解できないという人はいませんか?一応小学校の算数で習っている内容なので、そこらへんの詳しい説明は省かせてもらいますが、演算子(+−*/等)には計算をする優先順位があります。次にその優先順位の一覧を載せますので参考にしてみてください。(小さい番号程優先順位が高くなります)
優先順位 | 種別 |
---|---|
1 | 括弧で囲まれたもの |
2 | 関数式 |
3 | マイナス符号 |
4 | *%/ |
5 | +− |
6 | <<,>> |
7 | 関係式 |
8 | 論理式 |
9 | 代入式 |
CH=G@SETUP(640,480,8,1) G@FONT(0,0,0,3,"MSゴシック") G@PRINT(CH,0,0,STR((5+6)*4+(7-1)/2)) LOOP G@FLIP() ENDLOOP
どうですか「47」という結果になりましたか?
もし「(5+6)*4+(7−1)/2」というのが分かりずらければ「((5+6)*4)+((7−1)/2)」というように括弧記号(青い部分)を上手く使ってみるとよいでしょう。(ちなみに括弧記号は幾ら書いても処理速度には影響しません)