プログラムの流れを変えることもできる

 プログラムは通常、並べられた命令を上から下へ順に実行していきます。しかし、これではさまざまな状況に応じて処理内容を変えることができません。そのため、順次実行のほかに、先ほどの繰り返し処理や、条件によって次の処理を変える条件分岐という制御方法も用意されています。

 例えば、「ネコが右端まで行ったらセリフを表示する」場合を考えてみましょう。これをプログラム的に言い換えると「ネコがステージの端に触れたらセリフを表示するが、そうでなければさらに右に進む」となります。ブロックに置き換えると、図8のようになります。「〈端に触れた〉まで繰り返す」ブロックで判定し、端に行き着いたら次のセリフを表示するブロックを実行しますが、そうでなければ「10歩動かす」ブロックを繰り返します。このプログラムを実行すると、ネコが右へ動いていき、端まで来るとセリフが表示されます(図9)。このように繰り返し処理や条件分岐でプログラムの流れを制御することで、複雑な処理を実現できるのです。

図8 キャラクターがステージの右端に行き着いたらセリフを表示するようにプログラムを変えてみよう。ブロックに「端に触れたか?」という条件を設定し、その答えによって次に実行する命令を変えればよい。「制御」のジャンルに、条件分岐のブロックがいくつかある。
図9 キャラクターが右へ移動するたびに「ステージの端に触れたかどうか」を判定し、触れていなければ右への移動を繰り返す。端まで行くと「これ以上進めないニャ!と2秒言う」ブロックを実行する。

(文/ 江口 悦弘=日経パソコン)