「もし、今日晴れたならば、洗濯物を干そう」とか、「もし、家に居たならば、電話にでる」とか、
現実世界でも、『もし、〜ならば、〜〜』と言いますよね。
プログラムでも、条件によって処理を分けることができます。
それでは、「もし、・・・ならば・・・。違えば・・・」を、使って簡単に遊んで見ましょう!
運命の二択
下のプログラムを実行してみてください。『二択』命令は、メッセージを表示し、同時に、「はい」か、「いいえ」で尋ねるダイアログを表示します。
「あなたは、Hですか?」と、二択。
もし、それが、はいならば、「正直ですね」と、言う。
ダイアログに答えた、その答えは、例の如く、変数「それ」に代入されます。
違えばを使う
次に、条件が、正しくなかった場合の処理も作ります。
それには、『違えば・・・』を使います。
下の二文は、同じ意味になります。
「最近、お疲れですか?」と、二択。
もし、それが、はいならば、「頑張り過ぎです。少し休みましょう。」と、言う。
もし、それが、いいえならば、「ほどほどが大事ですよね、」と、言う。「最近、お疲れですか?」と、二択。
もし、それが、はい
ならば、「頑張り過ぎです。少し休みましょう。」と、言う。
違えば、「ほどほどが大事ですよね、」と、言う。
数値の比較
それから、冒頭の、東大合格プログラムでは、テストの点数により、その後の結果が、大きく変わってきました。一般的にプログラムで実行を制御する場合にも、数値の比較が、頻繁に使われます。
比較に使うのは、以下の不等号です。
記号 意味 A=B AがBと等しいとき A>B AがBより大きいとき A≧B
A>=BAがB以上のとき A<B AがBより小さいとき A≦B
A<=BAがB以下のとき A<>B AがBと等しくないとき
もし、テストの点数が、70点以上なら「合格」と、それ以下なら、不合格と表示してみましょう。
「あなたのテストの結果は?」と、尋ねて、テスト点数に、入れる。
もし、テスト点数≧70{点}
ならば、「合格です」と、言う。
違えば、「不合格です」と、言う。
また、前回の『?回、(命令、命令、命令・・・) 』のように、「ならば」「違えば」の後ろで、命令をいくつも使いたい場合は、『ならば、(命令、命令、命令・・・)』と、こちらも、丸カッコで、ならばの範囲を囲います。
「現在の所持金は?」と、尋ねて、所持金に、入れる。
もし、所持金>5000{円}ならば、(
「新しいマウス買いますか?」と、二択。
もし、それが、はいならば、所持金=所持金−2000{円}
)違えば(
「マウス買うと生活費に困るので買いません。」と、言う。
)。
「現在の所持金は、{所持金}円」と、言う。
今回は取り上げませんでしたが、「もし」には、複数の条件が指定できたりと、もっと高度な使い方もあります。「もし」を、極めたくなったら、以下の記事にも目を通してみてください。
(参考)→「もしもし亀よ」/「もし、競輪場で」/「複雑な条件をチェック」/「もし〜でなければ」と連文