「ずっと」ブロックは、1秒にどれくらい動くか?

Scratch

Scratchのブロックの中でもよく使うブロックの一つに「ずっと」があります。

中に入った命令を、ずっと繰り返します。

例えば、下のようなプログラムを組んでキャラクターを動かそうとしても動きませんが、

これだけだと動かない

「ずっと」と組み合わせると、右矢印を押した瞬間にキャラクターが移動します。

「ずっと」は移動や数を数える、表示を自動で変えていく場面など、さまざまなプログラムに使われています。

これだと動く

ふと思ったんです。

「ずっと」って、1秒で何回命令を繰り返しているんだろう?

実験してみました。

1秒に何度繰り返すかを確認する

下のようなプログラムを作りました。

変数iを作り、ずっとの中で1ずつ増やしていきます。

一方で、1秒経ったらプログラムを止める命令も作りました。

これで旗ボタンを押せば、1秒間「ずっと」はiを増やし続け、その結果が1秒間に何度繰り返したかを表すことになるはずです。

早速スタート!

はじめ、4万と読み違えていました

・・・は?

46万回以上・・・!?

ものすごい回数の繰り返しを行っていることがわかりました。

矢印キー押した瞬間にキャラが動くわけです。だって、1秒間に何万回、何十万回と繰り返しているのですから。

確認のため、何度かプログラムをスタートしてみたのですが、数字にばらつきがあることがわかりました。

おおい時で47万回以上。
少ない時で43万回以上。

処理にわずかな時間差があるようです。

ここで、次の実験を思いつきました。

平均回数を調べる

繰り返しの回数を記録し続け、その平均を取ることで、「1秒間にだいたい何回繰り返しているのか」を調べることにしました。

記録には「リスト」を使います。

スタート(緑の旗)ボタンを押すたびに、リストに「1秒間に繰り返した回数」が記録されていく

集めた記録を全て足して、記録回数で割れば、平均値が出ます。

1回スタートボタンを押すたびに平均値をボールちゃんに言ってもらうようにしました。

「リストの長さ」が便利。回数が変わっても、いちいち数字を入れなくていいから。

50回スタートして、出した平均がこちら!

ボールちゃんにしたのは、著作権対策です。

約45万5千回

でした!

終わりに

今回の実験は、変数を1変えるだけの非常に軽い命令でしたので、このような数字だったのかもしれません。

もう少し複雑な命令を入れると、回数はどうなるか?
「○秒待つ」のブロックと組み合わせるとどうなるか?

など、今後も実験してみたいと思います。

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