5. 数を計算する
鉱石をいくつかの箱に分けたとき、全部でいくつあるでしょうか。手元で数える代わりに術式に計算させてみましょう。整数を入れるint型の変数を使います。
計算に使う記号
| 記号 | 計算 | 例と結果 |
|---|---|---|
| + | 足し算 | 2 + 3は5 |
| - | 引き算 | 8 - 3は5 |
| * | 掛け算 | 2 * 3は6 |
| / | 割り算 | 8 / 2は4 |
掛け算は×ではなく*、割り算は÷ではなく/です。学校の計算と同じく掛け算と割り算を先に行います。(2 + 3) * 4なら括弧の中が先なので20です。
整数同士の割り算では小数部分を残しません。5 / 2は2です。ゼロで割ることはできません。
計算結果を代入する
public class Program : ArcaneProgram
{
public void OnStart()
{
int orePerCrate = 80;
int count = 3;
int total = orePerCrate * count;
Workshop.Log.Write("Calculation finished.");
}
}練習として1箱に鉱石80個を入れた箱が3箱あると考えます。orePerCrateは1箱の個数、countは箱の数です。実際の倉庫を操作する術式ではありません。orePerCrate * countに値を当てはめると80 * 3になります。この計算結果の240がtotalに入ります。
ログへ出るのはCalculation finished.だけです。このゲームのWriteは文字列を受け取るため、この例では計算した数を直接表示していません。次の章で、計算結果を条件で確かめる方法を学びます。
自分の値を使って更新する
count = count + 1;はまず右側のcountを読み、1を足してから左側へ入れ直します。countが3なら実行後は4です。=は数学の等号ではなく代入です。
countを変えても、先ほど計算したtotalは自動では変わりません。total = orePerCrate * count;をもう一度実行すると、現在の値で計算し直します。
練習問題
例でcountを3から4に変えた後、totalを計算し直します。次の二つを答えてください。
- 計算し直す前のtotalはいくつですか。
- 計算し直した後のtotalはいくつですか。
解答例を表示する解答例を閉じる
計算し直す前は240、後は320です。totalは一度代入した結果を覚えています。countの変更だけで連動して書き換わるわけではありません。
例のtotalの宣言の後へ、count = 4;、total = orePerCrate * count;の順に追加すれば、計算し直せます。
