条件分岐とは、プログラムが特定の条件を満たしたときにのみ、特定の動作をさせるために使用します。
コンピューターはプログラムを書かれた通りに実行します。
これでは毎回同じ動作を繰り返すことになります。
もちろん、このようなプログラムもありますが、
条件分岐を使うと、条件が成り立った時だけ特定のプログラムを実行することができます。
条件分岐の基本「もし」
スクラッチでは「もし」のブロックを使って条件分岐を表します。
この例では
条件として「スペースキーが押された」
この条件が成り立ったときだけ、指定されたブロックを実行し、
スペースキーが押されていなければ、そのブロックは実行しません。
条件が成り立たない時に別の動作をさせたい場合には、反対条件を設定することができます。
この例ではスペースキーが押されていなければ、「こんにちは」と言うプログラムを実行することができます。
条件分岐のプログラムを作ってみましょう。
次のようにプログラムを作成します。
「ずっと」ブロックは、その中にあるプログラムを永遠に繰り返します。
キーが押された時(条件分岐)にのみキャラクターが移動するようにします。
ブロック全体が黄色く光っているのは、プログラムが実行中であることを示しています。
赤いボタンを押すとプログラムは停止します。
繰り返し
条件分岐の一種に「繰り返し」があります。
スクラッチには、プログラムを繰り返すための3つのブロックがあります。
「ずっと」ブロック:このブロックは、中にあるプログラムを無限に繰り返します。
プログラムは止まることなく実行され続けるため、永遠に動き続けるアニメーションやゲームに使われます。
「回繰り返す」ブロック:指定した回数だけプログラムを繰り返します。
例えば「10回繰り返す」と設定すれば、ブロックの中のプログラムを10回繰り返します。
「まで繰り返す」ブロック:特定の条件が成り立つまでプログラムを繰り返します。
条件が満たされたら、下のブロックに進みます。
例えば、「スペースキーが押されるまで」という条件を設定した場合、その条件が成り立つまでプログラムは繰り返されます。
スペースキーが押されたら、下のブロックに進みます。
いろいろな条件
条件ブロックとは:
「もし~なら」ブロックに入れる部分と同じ角型のブロックが条件ブロックです。
大きく分けて3種類あります。
条件1:ユーザーからの入力条件
ユーザーがキーやマウスを押したときに反応する条件です。
次のプログラムでは、マウスでキャラクターに触れたときに、キャラクターがどこかへ移動します。
条件2:当たり判定
当たり判定とはキャラクターが他のキャラクターに当たった場合やキャラクターが背景の一部に触れた場合に使用します。
次のようにプログラムを作ってみましょう。
猫と風船を配置します。
緑の旗をクリックしてプログラムを実行してください。
猫と風船が触れていれば「こんにちは」といいます。
また、色を指定する条件では、キャラクターの一部や背景に触れたときにを条件にすることができます。
条件3:演算結果
「演算」ブロックは比較を行うことでプログラムの流れを変えることができます。
同じ値かどうか、大小関係は2つの値を比較します。
これらは変数を用いた計算結果によって制御を変えたい場合に特に有効です。
変数については、別の回で詳しく説明します。
今回は条件分岐について説明しました。
条件分岐はプログラム言語にとって重要な機能です。
実際にいろいろ条件を変えてプログラムを作り試してみましょう。
コメント