プログラミング!LEDで変化する模様をつくるプログラムここでは、「ループ」カテゴリーの「もし“真”ならくりかえし」ブロックを使ったプログラムをつくってみよう。このブロックは、くりかえす回数がわからない場合のプログラムで使うよ。今回は、micro:bitのLEDを点灯させるけど、順番通りではなくて、ランダムに点灯するようにしよう。LEDの点灯が変化していくので、どんどん変わっていく模様のように見えるゾ。Y“0”」ブロックを「ずっと」ブロックと組み合わせよう。MakeCodeのシミュレーターで、左上のLEDが点滅する。Y“0”」ブロックは、LEDが点いていたら消灯、消えていたら点灯といった処理をする。「ずっと」ブロックと組み合わせることで処理を繰り返しているので、LEDが点滅するよ。Yそれぞれに0~4の乱数を入れてみよう。Y“0”」ブロックの“0”の部分に、「計算」カテゴリーの「“0”から“10”までの乱数」ブロックを入れる。ここで、“10”は“4”に変えるよ。シミュレーターで、LEDディスプレイでどんどん模様が変化していく様子が確認できたかな。このままでは処理を止めることができないので、プログラムの開始を、micro:bitが揺さぶられたとき、終了をボタンAが押されたときに変更しよう。Y“0”から“4”までの乱数”」ブロックを移動する。すると、micro:bitをゆさぶるたびにLEDが点灯するけれど、先ほどのように模様が変化し続けるような表示にはならない。模様が変化し続ける表示しにしたいので、「もし“真”ならくりかえし」ブロックを使ってみよう。これで、模様が変化し続ける表示になった。このままでは止めることができないので、最後にボタンAが押されたら止めるようにする。”ではない」ブロックを組み込む。”には「ボタン“A”が押されている」ブロックを組み込む。この場合は「もしボタンAが押されていなかったらくりかえす」という意味になるので、ボタンAが押されたら、くりかえしの処理が止まる。これでプログラムは完成だ。シミュレーターで見るのもいいけど、保存してmicro:bitに書き込んでみよう。ゆさぶるとディスプレイの表示が変化しはじめて、ボタンAを押すと止まるよ。止まった時の模様を見るのもおもしろいね。このプログラムは、LEDディスプレイにおもしろい模様を表示するくらいの機能しかないが、誰かと見せあって模様を比べてみたり、模様が何に見えるかなど連想して遊ぶのも楽しいね。「もし“真”ならくりかえし」ブロックによるくりかえしは、くりかえしの回数が決まっていなかったり、ボタンを押す、ゆさぶるといった動作が条件になるくりかえしができる。これを使うと、ストップウォッチやタイマーのようなプログラムもできるので、チャレンジしてみよう。