初心者のためのゲームプログラミング入門

プログラミングとゲームの杜

初心者のためのプログラミング入門 & ゲームプログラムの作り方入門

Small Basic 入門

4.計算してみよう

 

プログラミング言語といえば、ある意味、何かを計算させるためにあるといっても過言ではないでしょう。
ゲームにしても中では様々な計算を行っています。
さて、これから講座を受けるにあたり注意があります。

サンプルを実際に動かしてみましょう

読んでいるだけでは、ホントに身に付きません。
特にプログラミングを初めて行う人や、コンピュータに苦手意識がある人は尚更です。

 

 

数字を表示してみよう

前回使ったテキスト表示をしてみます。
次のプログラムを入力してください。

Small Basicで計算する

 

実行してみましょう。実行ボタンをクリックします。

実行ボタンを押す

 

右は実行結果です。

計算式とその結果

数字を使って表示をしてみました。
10+25 の所では 35
100-20 の所では 80
と表示されています。

気付いたかもしれませんがダブルコーテーション(”)を付けずに数字を使って
足し算や引き算などの計算ができます。

1+2+3+4-5 のようにつなげて計算することもできます。
色々と試してみましょう。

 

 

数値と文字列とは

次のプログラムと実行結果を見てください。

計算式とその結果

1行目では 10+25 という計算をしているので 35 と表示されてます。
先ほど説明しましたが、これは数字を使って足し算が行われた結果です。

2行目を見てください。
計算されずに 10+25 がそのまま表示されています。

これは1行目は数値を使った数式として扱われ、2行目はただの文字列として扱われたのです。

プログラミング言語では、計算を行える数値と
数字や文字をそのまま扱える文字列という概念があります。

なお、文字列を扱うときはダブルコーテーション(”)で囲む必要があります。

 

 

文字列と数値をいっしょに表示してみよう

文字列や数値って、なんだか面倒くさい
と思う人もいるかもしれません。でも、使い方によっては便利なんです。

これまでの例では、ただ計算結果を表示しているだけでした。
しかし、どんな計算をしていたのか分かりませんね。

次のサンプルを見てください。

数値と文字列を同時に表示する

文字列の ”10+25” と、数値の計算 (10+25) をいっしょに表示した例です。
10+25=35
という感じで文字列と数値を同時に表示できました。

 

ここで注目してもらいたいのはプラス記号(+)です。

文字列と数値をつなげるプラス

ここで使われた2つのプラスは見た目は同じでも、違う働きをします。
1つ目のプラスは、文字列と数値をつなげるため
2つ目のプラスは、数と数の足し算をするため
という感じです。

それでは、見分ける方法です。
文字列の横にあるプラス記号はつなげるためのもの
と覚えてください。

 

 

プログラミング言語のクセに気を付けよう

次のプログラムと実行結果を見てください。

プログラミング言語の癖には気を付ける

2行目に注目です。
1行目の (10+25) からカッコを除いたものです。

私はこのプログラムを実行する前は、同じ結果になると思っていました。
何故なら 10+25 の計算式にはダブルコーテーションがなく数値として扱われるだろうと思っていたからです。

でも実際は、すべて文字列として扱われたため
10+25=1025
という結果になったのです。

 

どんな言語にも、このようなクセが存在します。
このようなクセを発見したときには、回避策を見つけましょう。
今回の回避策は計算式にはカッコを付ける、です。

1行目のようにカッコを付けていれば、数値として扱ってくれます。

 

 

掛け算と割り算

次のプログラムと実行結果を見てください。

掛け算と割り算

パッと見て意味が分かる人は、もうコンピューターに慣れていますね。

これは掛け算と割り算の計算式です。
1行目のアスタリスク()は掛け算の記号です。
2行目のスラッシュ( / )は割り算の記号です。
一般的によく使う x や ÷ の記号は使いません。

 

アスタリスクとスラッシュは、だいたい次の位置にあります。

アスタリスクとスラッシュのキー

アスタリスクの場合は、シフト(Shift)キーを押しながら*キーを押します。

 

テンキーのあるキーボードには、次のような感じであります。

テンキーのアスタリスクとスラッシュ

 

 

演算子の優先順位とは

さあ、演算子(えんざんし)という専門用語がでてきました。
といっても何てことありません。
+ - * /
プラス、マイナス、アスタリスク、スラッシュなど計算に使うものを演算子と言っているだけです。

では、優先順位とはなんでしょうか。
それは計算する順番です。

 

次のプログラムと実行結果を見てください。

演算子の優先順位

まず 2*2 を計算してとなり、3+4という結果になりました。
足し算よりも掛け算の方が優先順位が高いため、先に計算されます。

 

足し算を先に計算したい場合は、カッコで括ります。

足し算を先に計算させたいときはカッコで括る

このようにすれば3+2が先に計算されます。次に5*210という結果になります。