IF文を意識して、生活してみよう。

 プログラミング学習の進捗状況はどうでしょうか?
 あわてる必要はないので、明るく、楽しく取り組みましょう。
 さて、中学生と英語の話をしていますと、どうやらIFでつまずいているようです。日本の文法用語では、仮定法。「もしも〜ならば」という用法です。英語のままですと、IFはConditionalsですから、「ある条件ならば」ということです。IFについては、「ある条件ならば」といったほうが、プログラミング学習に取り組んでいるみなさんには、むしろわかりやすいでしょう。
 スクラッチでは、IF文のことを仮定法なんて、いいません。多くは、IF文(条件分岐)としていますから、本来の英文法の定義に近いのです。
「もしXXXの条件の場合は、○○○する」が条件分岐です。
 たとえば、
「夕ごはんまでに1時間以上の時間があったら、遊びに行く」
「夕ごはんまでに1時間以上の時間がなかったら、家にいる」
 といった感じです。
 上記の場合であれば、変数は「夕ごはんまでの時間」です。
 IF文ブロック(もし〜なら〜)を使って、
 もし「時間」≧60分なら、
 遊びに行く
 でなければ
 家にいる
 となりますね。
 なんだ、ぼくが毎日、考えていることじゃないか。
 と思いましたか。
 そのとおりです。IF文は、君の毎日の生活のなかにあるのです。
 人生は、条件によって、刻一刻と変化します。
 もしIF文がなかったら、君は生活することができないかもしれません。
 たとえば、先の文でいえば、「夕ごはんまでに1時間以上の時間があったら、遊びに行く」とあっても、このとき、もし遊び相手の友だちがいなかったら、君はどうするでしょうか。
 さらに条件分岐を追加して、「友だちがいなかったら」「帰ってくる」でなければ「待っている」となるでしょう。「待っている」を選んだとしても、いつまでも待ち続けるわけには行きませんから、君は「もし友だちが30分以内にもどってこなかったら」「帰ってくる」という条件分岐を加えるでしょう。
 IF文(条件分岐)といきなりいわれるとおどろきますが、IF文は毎日君がやっていることのなかにあります。
 英語の仮定法でつまずいた中学生は、if I were you (君の立場になってみると)に、とまどったようですが、これはむしろ慣用的なものだ、と考えてもいいし、わたしが君になることは現実的に不可能ですから、仮定を強調するためのwereなのだ、といってもいいかもしれません。
 いずれにせよ、君の毎日の生活のなかにIF文(条件分岐)はあります。他のプログラミングの概念も、じつは君の毎日の生活のなかにあります。人間である以上、ひとはプログラミングと無縁であることはできません。
 さあ。君の生活の中のプログラミング概念を探してみましょう。

学院長 筒井 保明