制御ブロックについて

制御ブロックは全部で11個あり、色はオレンジ色で統一されています。

この制御ブロックを使用することで、分岐や繰り返しなどプログラムを制御できます。

今回は、その制御ブロックについての解説とそれぞれの動作例を交えて詳しく解説していきます。

繰り返しについて

繰り返しは、プログラミングで必要になる基本的な考え方です。
あらかじめ決めた条件で同じ処理を繰り返し行います。

Scratchでは、制御ブロックと真偽ブロック・演算ブロックを組み合わせてプログラムの繰り返しを行います。

繰り返しをすることで、同じ動作のプログラムを複数作る必要がなくなります。

以下の図は、ネコが50歩ずつ歩いているように動作を3回繰り返すときの表現をまとめたものです。

繰り返しについて
繰り返しについて

繰り返しをプログラムに組み込むことで、条件に合わせて同じ動作を繰り返すことができるようになります。ゲームやアニメーション制作でもこの繰り返しはよく使われる処理となっています。

この記事では、制御ブロックで様々な繰り返し処理について解説しているので、どのような繰り返し処理ができるようになるか記事を読んで確認していきましょう。

制御ブロック解説

( )秒待つ

1秒待つ

解説

指定した秒数だけ下に続くプログラムの処理を一時停止します。

プログラムの処理は高速で行われています。
そのため、下図は左側のプログラムを実行する前と、実行した後の結果です。
プログラムを実行すると一瞬で処理が行われ、見た目上は「こんばんは」のみが画面上に表示されます。

プログラムは高速で処理される

実は、このプログラムでもネコは「おはよう!」「こんにちは!」と全て言っていますが、プログラムの処理が高速で行われているので、結果として最後の「こんばんは!」のみが表示されたように見えてしまうのです。

これをネコが一言ずつ話すようにするために、「1秒待つ」ブロックをそれぞれのブロックの間に入れると、下図のようになります。

間に1秒待つを入れた結果
間に1秒待つを入れた結果

このようにプログラムの中に「1秒待つ」のブロックを入れることで、見た目上「おはよう」「こんにちは」「こんばんは」と順番にスプライトが言っているように画面上に表示されます。

( )回繰り返す~

10回繰り返す

解説

指定した回数だけ、このブロックの中にあるプログラムの処理を繰り返し実行します。
指定した回数実行後は、その下に続くプログラムの処理が実行されます。

3回繰り返す

ずっと~

ずっと~

解説

このブロックの中にあるプログラムの処理を止める処理をするまで繰り返し実行します。

このプログラムを止めるには、同じ制御ブロックの「[ ]を止める」を使用するか、手動で赤丸ボタンを押すことでプログラムを止めることができます。

ずっと繰り返す

もし< >なら

もし~なら~

解説

このブロックにはめた真偽ブロックの条件や状態がtrue(真)の場合、中に入れたプログラムの処理が実行されます。
真偽ブロックの条件や状態がfalse(偽)の場合、このブロックの下に続くプログラムの処理が実行されます。

もし赤色に触れてたら実行する

もし< >なら~,でなければ~

もし~なら~でなければ~

解説

このブロックにはめた真偽ブロックの条件や状態がtrue(真)の場合、上段の中に入れたプログラムの処理が実行されます。

また、真偽ブロックの条件や状態がfalse(偽)の場合、下段の「でなければ~」の中に入れたプログラムの処理が実行されます。

もし赤色に触れてたらりんごを見つけたと言う、そうでないならうーんと考える

< >まで待つ

~まで待つ

解説

このブロックにはめた真偽ブロックの条件や状態がtrue(真)になるまでプログラムの処理を一時停止します。true(真)になると下に続くプログラムの処理が実行されます。

このブロックは、ゲームやアニメーションを開始するトリガーとしてよく使われるブロックです。

スペースキーが押されるまで待つ

< >まで繰り返す~

~まで繰り返す~

解説

このブロックにはめた真偽ブロックの条件や状態がtrue(真)になるまで中に入れたプログラムの処理を繰り返し実行します。

下図のプログラムの場合、背景を複数用意することで、背景1→背景2→背景3→背景1…と自動で切り替わります。好きなタイミングでスペースキーを押すことでその背景で止めることができるプログラムとなっています。

スペースキーが押されるまで繰り返す~

[ ]を止める

解説

選択した条件に合わせてプログラムの処理を停止します。

「全てを止める」の場合
すべてを止める

このブロックが実行されると、プロジェクト内のすべてのプログラムが停止します。

すべて止める
「このスクリプトを止める」の場合
このスクリプトを止める

このブロックが実行されると、このブロックと同じスクリプトが停止します。
そのため、他のスクリプトや他のスプライトのスクリプトは処理されたままになります。

Scratchでの「スクリプト」はコードブロックのかたまり1つのことを指しています。

このスクリプトを止める
「スプライトの他のスクリプトを止める」の場合
スプライトの他のスクリプトを止める

このブロックが実行されると、実行されたスプライトにある他のスクリプトの処理が止まります。
そのため、このブロックが含まれるスクリプトと他のスプライトのプログラムは処理されたままになります。

スプライトの他のスクリプトを止める

クローンされたとき

クローンされたとき

解説

このブロックは「( )のクローンを作る」ブロックでクローンが作られた場合、下に続くプログラムの処理を行います。

( )のクローンを作る

自分自身のクローンを作る
Appleのクローンを作る

解説

選択したスプライトのクローンを作ることができます。
このブロックはクローンを作るだけなので、クローンに何か動きや音などをつけたい場合は、「クローンされたとき」ブロックを使用して、プログラムの処理を行うことでクローンに動きや音をつけることができるようになります。

クローンされたとき、クローンを作る

このクローンを削除する

このクローンを削除する

解説

このブロックが実行されたスプライトのクローンを全て削除します。

クローンを削除する

その他のカテゴリブロックの解説

動きブロック

見た目ブロック

音ブロック

イベントブロック

調べるブロック

変数/ブロック定義ブロック

演算ブロック

リストブロック

投稿者 鈴木佑基

愛知県豊川市出身
中部大学大学情報工学科卒
ネットイーグル株式会社にて7年間セールスエンジニア業務に従事
現職の株式会社レクトを設立し、講師&営業&総務業務を担当
豊川市を盛り上げます!