6. 条件で処理を選ぶ
材料が足りるかどうかで工房に残す知らせを変えてみましょう。条件に合わせて実行する文を選ぶことを「条件分岐」と呼びます。
条件を書く
練習として作業台にある4個の石から3個使う場面を考えます。ここでは実際の在庫を読まずに自分で個数を決めておきます。stones >= 3は「stonesが3以上か」を調べる式です。
条件が成り立つことをtrue、成り立たないことをfalseと呼びます。この二つの値を扱う型がboolです。falseはエラーという意味ではありません。
| 比較 | 意味 |
|---|---|
| a >= b | aはb以上か |
| a > b | aはbより大きいか |
| a <= b | aはb以下か |
| a < b | aはbより小さいか |
| a == b | aとbは等しいか |
| a != b | aとbは違うか |
代入の=と、等しいかを調べる==を区別してください。
ifとelse
ArcaneScript
public class Program : ArcaneProgram
{
public void OnStart()
{
int stones = 4;
if (stones >= 3)
{
Workshop.Log.Write("Enough.");
}
else
{
Workshop.Log.Write("Not enough.");
}
}
}ifの括弧の中がtrueなら最初のブロック、falseならelseのブロックを実行します。ブロックは波括弧で囲んだ処理のまとまりです。
この例は4 >= 3なのでtrueとなり、Enough.を出します。もう一方の文は実行しません。比べるだけなのでstonesの値は4のままです。
練習問題
stonesを2、3に変えた場合、それぞれどちらの文章が出るでしょうか。予想してから試してください。
解答例を表示する解答例を閉じる
2ならNot enough.、3ならEnough.です。>=は「以上」なので、ちょうど3も条件に入ります。
次の章へ
ここまでは自分で用意した数を使いました。次は工房に実際にある資源の量を読んで、同じように条件を調べます。
