第5章 計算させよう |
パソコンというのは、実はとっても計算が早いんですね。 人間にはなかなかできない計算も一瞬でやってしまいます。 試しに、簡単な計算からやらせてみることにしましょう。 |
mes 1+1 stop |
ちゃんと計算してくれましたか? mes命令では、数字を書くときは""を書かないんでしたよね。 計算させる式を書くときにも""は必要ありません。 このように式を書くだけで、すぐに計算してくれます。 次はもう少し難しい計算をさせてみましょう。 |
mes 15-5 mes 15*5 mes 4+20/4 mes 5+(20/4) mes 10/3 mes 15\4 stop |
見なれない記号があると思いますので説明します。 HSPでは、掛け算には「*」を、割り算には「/」を使用します。 ×や÷は使えないので、注意してくださいね。 上から3行めの5+20/4の計算結果がおかしいと思いませんでしたか? 実は、HSPではどんな計算でも、必ず左から順番に計算していくんです。 どうしても優先したい計算がある場合、4行目の様に( )を使います。 ( )がある場合、( )の中が優先して計算されます。 またHSPでは、小数点は計算やその結果には使えません。 その為、10/3=3.33・・・になるのが正しいのですが、小数点以下は切り捨てられて3になってしまいます。 「\」を使えば、割り算の余りをもとめることもできます。 15\4なら、15を4で割ってその余りが表示されることになります。 足し算:+ 引き算:- 掛け算:* 割り算:/ 剰余:\ ということです。他にも計算はあるんですが、主に使うのはこの5つですので必ず覚えてください。 最後は、前章で習った変数を使って計算させてみましょう。 |
n1=2 n2=3 n3=n1+n2 mes n1+n2 mes n3 n3=n3+2 color n3*35,0,10*20 mes n3 stop |
このプログラムではまず、n1に2を、n2に3を代入(変数の中に数字や文字を入れること)しています。 そしてn3には、n1とn2を足し算した結果が代入されることになります。 また、mesで表示するときに計算させることもできます。 つまり、mes n1+n2とmes n3は全く同じものを表示するわけです。 その次の、n3=n3+2の部分は少し変だと思いませんか? 算数や数学では、こんなことはありえませんよね。 「=」というのは、左の変数と右の計算結果が同じという意味ではなく、 左の変数に右の式の計算結果を入れる、という意味です。 この場合はあらかじめn3に入っていた5に、2を足した値が代入されるわけですね。 次のcolor命令でもわかるように、mes命令以外でも計算をさせることは可能です。 n3には7が入っていたので、7×35=245となりますね。 つまりこれは、color 245,0,200と書くのと全く同じだということです。 少し難しかったかな?分からないことがあったらすぐに聞いてくださいね(*^^) 次の章では、プログラムを分かりやすくする工夫を紹介します。 準備ができている人は第6章にどうぞ。 |