【ちょっと特殊】Scratchで条件分岐する4つの方法を徹底解説

【ちょっと特殊】Scratchで条件分岐する4つの方法を徹底解説

※当サイトには広告が掲載されています。ご了承くださいm(_ _)m

Scratchで条件分岐をする方法を知りたいな。

こんな疑問にお答えします。

本記事の内容
  • Scratchで条件分岐する4つの方法を徹底解説

そんな私は大手メーカーでソフトウェアエンジニアを6年以上経験していまして、バリバリプログラムを書いていました。

この私が解説します。

スポンサーリンク

Scratchで条件分岐する4つの方法を徹底解説

Scratchには4種類の条件分岐ブロックがあります。

  • もし◇なら
  • もし◇なら、でなければ
  • ◇まで待つ
  • もし端に着いたら、跳ね返る

上記のとおりです。

最初の3つは制御の中にあります。

そして、「もし端に着いたら、跳ね返る」ブロックは動きの中にあります。

それぞれ順番に解説します。

もし◇なら

「もし◇なら」ブロックは条件が成り立つときに処理を実行します。

例えば、「スペースキーが押された」を条件にするとスペースキーが押されたときだけ処理を実行します。

使い方は簡単で「もし◇なら」の◇に条件を設定し、ブロックの間に処理を入れるだけです。

このプログラムだとスペースキーが押されるまで何もしないで、スペースキーが押されたらこんにちは!と表示します。

他には「敵を倒したときだけ点数を増やす」のような使い方ができますよ。

以上のように「もし◇なら」ブロックは特定の条件下で実行したい処理がある場合に使用します。

もし◇なら、でなければ

「もし◇なら、でなければ」ブロックは条件が成り立つときの処理か成り立たないときの処理を実行します。

例えば、「スペースキーが押された」を条件にするとスペースキーが押されたときは処理A、スペースキーが押されていないときは処理Bを実行します。

こちらも使い方は簡単で「もし◇なら」の下に条件が成り立つ場合の処理、「でなければ」の下に条件が成り立たない場合の処理を入れるだけです。

このプログラムだと何もしていないときは前後に動き続けて、スペースキーが押されたらこんにちは!と言います。

他には「制限時間が0になったときに得点が100点以上ならゲームクリア、そうでなければゲームオーバーと表示する」のような使い方ができます。

以上のように「もし◇なら、でなければ」ブロックは条件によって実行する処理を分けたい場合に使用します。

◇まで待つ

「◇まで待つ」ブロックは条件が成り立つまで処理を止めて待ちます

「スペースキーが押された」を条件にするとスペースキーが押されない限り処理が先に進みません。

使い方は簡単で、止めておきたい処理の手前に配置します。

このプログラムだとスペースキーが押されるまで何もしないで、スペースキーが押されたらこんにちは!と表示します。

他には「得点が100点入るまで待ち、100点入ったらゲームクリアを表示する」のようなプログラムを作れます。

以上のように「◇まで待つ」ブロックは条件を満たすまで処理を止めておきたい場合に使用します。

もし端に着いたら、跳ね返る

「もし端に着いたら、跳ね返る」はスプライトが画面の端に着いたら180度回転します。

特殊な条件分岐で、使える状況が限定的です。

例えば、次のような使い方をします。

このプログラムだと10歩ずつ動き続けて、画面の端についたら180度回転して再び10歩ずつ動き続けます。

そして、反対側の画面の端についたら再び180度回転して10歩ずつ動き続けます。これを繰り返します。

ちなみに、上記と同じ動作をするプログラムを「もし端に着いたら、跳ね返る」ブロックを使用しないで作ると次のとおりです。

「もし◇なら」と「端に触れた」を組み合わせれば同じ動作を実現することができます。
他には「昔ながらのブロック崩し」のように画面の端についたら跳ね返るゲームなどに使用できます。

そのブロック崩しを作るとこんな感じです。(ブロックは無いですが…)

以上のように「もし端に着いたら、跳ね返る」ブロックは画面内で動作を繰り返したいときに使用できますよ。

まとめ

本記事のおさらいです。

  • Scratchの条件分岐には「もし◇なら」、「もし◇なら、でなければ」、「◇まで待つ」、「もし端に着いたら、跳ね返る」の4種類がある
  • 「もし端に着いたら、跳ね返る」は「もし◇なら」と「端に触れた」を組み合わせれば同じ動作を実現可能

上記の通りです。

「もし◇なら」に登場した条件式の◇には真偽値が入ります。真偽値については「Scratchの「引数」とは?考え方から使い方まで詳しく解説」で詳しく解説しているので、あわせてご覧ください。

また、その他のScratchに関する解説は下記の記事をご覧ください。使い方だけでなく本質がわかるように解説しています。

では、Scratchを楽しんでください(^_^)/~

タイトルとURLをコピーしました