Scratchでループを使う方法を教えてほしいな。
こんな疑問にお答えします。
- Scratchでループを使う3つの方法を詳しく解説【繰り返すブロック】
そんな私は大手メーカーでソフトウェアエンジニアを6年以上経験していまして、バリバリプログラムを書いていました。
この私が解説します。
Scratchでループを使う3つの方法を詳しく解説【繰り返すブロック】
Scratchには3種類のループ(繰り返し)ブロックがあります。
- ◯回繰り返す
- ずっと
- ◇まで繰り返す
上記のとおりです。
制御の中にある右下に繰り返しの矢印がついている命令ブロックです。
それぞれ順番に解説します。
◯回繰り返す
「◯回繰り返す」ブロックは指定した回数の処理を実行するブロックです。
使い方は簡単で、「◯回繰り返す」ブロックの間に処理を入れるだけです。
このプログラムだと90度回すを3回実行するので270度回転します。
この「◯回繰り返す」ブロックは実行したい処理の回数が決まっている場合に使用します。
ずっと
「ずっと」ブロックはプログラムが実行されている間はずっと処理を実行します。
こちらも使い方は簡単で「ずっと」ブロックの間に処理を入れるだけです。
これを実行するとプログラムを実行している間は猫が回転し続けます。
とはいえ、プログラムの途中で「ずっと」繰り返している処理を止めたい場合もありますよね。そんなときは「すべてを止める」ブロックを利用します。
例えば次のように「もし◯◯なら」ブロックを使って、「スペースキーが押された」なら処理を止めるようにします。
このように「ずっと」ブロックを使用すれば同じ処理をずっと実行したいときに使えます。
◇まで繰り返す
「◇まで繰り返す」ブロックは条件式が成り立たない間は処理を実行するブロックです。
このブロックを使うには◇に条件式を入力します。
この例だと処理を1回実行するたびに変数が1ずつ増えるので、処理を3回実行すると条件式を満たさなくなり繰り返しが終了します。
では、次のように条件式が絶対に成り立たない場合はどうなるでしょうか?
そうです。「ずっと」と同じ動作になり、繰り返し処理が終わりません。
ループの応用例~九九計算プログラム~
最後にループを応用して九九を計算するプログラムを紹介します。
それがこちらです。
図にするとこんな感じです。
これを実行するとこうなります。
どうでしょうか?繰り返し処理を組み合わせればこんな事もできます。
まとめ
本記事のおさらいです。
- Scratchのループには「◯回繰り返す」、「ずっと」、「◇まで繰り返す」の3種類がある
- ループの中にループを使えば九九を簡単に計算できる
上記の通りです。
「◇まで繰り返す」に登場した条件式の◇には真偽値が入ります。真偽値については「Scratchの「引数」とは?考え方から使い方まで詳しく解説」で詳しく解説しているので、あわせてご覧ください。
また、その他のScratchに関する解説は下記の記事をご覧ください。使い方だけでなく本質がわかるように解説しています。
では、Scratchを楽しんでください(^_^)/~