Scratchでループを使う3つの方法を解説【繰り返すブロック】

Scratchでループを使う3つの方法を解説【繰り返すブロック】

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

Scratchでループを使う方法を教えてほしいな。

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

本記事の内容
  • Scratchでループを使う3つの方法を詳しく解説【繰り返すブロック】

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

この私が解説します。

スポンサーリンク

Scratchでループを使う3つの方法を詳しく解説【繰り返すブロック】

Scratchには3種類のループ(繰り返し)ブロックがあります。

  • ◯回繰り返す
  • ずっと
  • ◇まで繰り返す

上記のとおりです。

制御の中にある右下に繰り返しの矢印がついている命令ブロックです。

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

◯回繰り返す

「◯回繰り返す」ブロックは指定した回数の処理を実行するブロックです。

「3回繰り返す」とすると同じ処理を3回繰り返します。

使い方は簡単で、「◯回繰り返す」ブロックの間に処理を入れるだけです。

このプログラムだと90度回すを3回実行するので270度回転します。

他には「質問を2回繰り返す」プログラムとかに使えますよ。

この「◯回繰り返す」ブロックは実行したい処理の回数が決まっている場合に使用します。

ずっと

「ずっと」ブロックはプログラムが実行されている間はずっと処理を実行します。

つまり、プログラムを終了するまで処理を繰り返します。

こちらも使い方は簡単で「ずっと」ブロックの間に処理を入れるだけです。

これを実行するとプログラムを実行している間は猫が回転し続けます

他には、プログラムが実行されている間はずっとBGMを流し続けるとか、ゲームの背景がずっと動き続けるとか作れますよ。

とはいえ、プログラムの途中で「ずっと」繰り返している処理を止めたい場合もありますよね。そんなときは「すべてを止める」ブロックを利用します。

例えば次のように「もし◯◯なら」ブロックを使って、「スペースキーが押された」なら処理を止めるようにします。

こうすれば、スペースキーが押されるまで処理を実行し続けて、スペースキーが押されたら処理を停止することができます。
ただし、「もしスペースキーが押されたなら」の判定処理を実行するタイミングでスペースキーが押されないと停止しないので注意が必要です。

このように「ずっと」ブロックを使用すれば同じ処理をずっと実行したいときに使えます。

◇まで繰り返す

「◇まで繰り返す」ブロックは条件式が成り立たない間は処理を実行するブロックです。

このブロックを使うには◇に条件式を入力します。

こうすることでこの条件式を満たすまで処理を実行します。

この例だと処理を1回実行するたびに変数が1ずつ増えるので、処理を3回実行すると条件式を満たさなくなり繰り返しが終了します。

変数が4に変わると条件式を満たさなくなるので、処理が実行されなくなります。
これを利用した例として、得点が100点になるまでゲームを続けるとか、格闘ゲームで体力が0になるまで戦いを続けるようなプログラムがあります。

では、次のように条件式が絶対に成り立たない場合はどうなるでしょうか?

そうです。「ずっと」と同じ動作になり、繰り返し処理が終わりません

なので、絶対に成り立たない条件式を間違って作ってしまうといつまでたっても処理が終わらないバグになってしまいます。

ループの応用例~九九計算プログラム~

最後にループを応用して九九を計算するプログラムを紹介します。

それがこちらです。

これは繰り返し処理の中にもう一つ繰り返し処理を作ることで実現しています。

図にするとこんな感じです。

これを実行するとこうなります。

どうでしょうか?繰り返し処理を組み合わせればこんな事もできます。

まとめ

本記事のおさらいです。

  • Scratchのループには「◯回繰り返す」、「ずっと」、「◇まで繰り返す」の3種類がある
  • ループの中にループを使えば九九を簡単に計算できる

上記の通りです。

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

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

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

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