【発展編】6-b レインボー・ゲート

 

Q1. ☆問題☆

周波数を使って音を指定してみるよ。次のうち、レ(D5)と同じ音が出るのはどれかな。

  • 440Hz
  • 494Hz
  • 587Hz
  • 784Hz
  • 880Hz

正解

  • 440Hz
  • 494Hz
  • 587Hz
  • 784Hz
  • 880Hz

解説

周波数は、大きな数のときほど高い音になるんだね。

もし、音が同じかどうかわかりにくいようなら、図のようなプログラムを使って調べてみるといいよ。

image-1

 

Q2. ☆問題☆

ミッション2で、初めは緑色を見せたとき音が鳴らなかったけれど、プログラムを改造したら緑色でも音が鳴るようになったね。

これを、またさらに改造しようと思うんだ。

次の改造のしかたのうち、その改造をすると緑色を見せたときにも音が鳴らなくなるのはどれかな? すべて選んでね。

  • 無色のタブをタップし、初期条件に設定する。
  • 黄のタブをタップし、タブの色を緑にする。
  • 黄のタブをタップし、条件を削除する。
  • 赤のタブをタップし、初期条件に設定する。
  • +のタブをタップし、歯車をタップして、タブの色を緑にする。

正解

  • 無色のタブをタップし、初期条件に設定する。
  • 黄のタブをタップし、タブの色を緑にする。
  • 黄のタブをタップし、条件を削除する。
  • 赤のタブをタップし、初期条件に設定する。
  • +のタブをタップし、歯車をタップして、タブの色を緑にする。

解説

無色のタブをタップし、初期条件に設定する。

無色のタブを初期条件に設定すれば、ミッション2で改造する前のプログラムと同じになるよ。
最初と同じように、緑色を見せたときには無色のタブが実行されることになるので、音は鳴らなくなるね。

 

黄のタブをタップし、タブの色を緑にする。

黄のタブは音が出るタブなのだから、これをタップして緑のタブにしたら、緑色を見せたときには音が出ることになるね。

 

黄のタブをタップし、条件を削除する。

黄のタブを削除すると、一番左にある無色のタブが代わりに初期条件になるよ。
そうすると、緑色を見せたときには無色のタブが実行されることになるので、音は鳴らなくなるね。

 

赤のタブをタップし、初期条件に設定する。

赤のタブを初期条件に設定すると、今度は緑を見せたときには赤のタブが実行されることになるね。
赤のタブも音を出すタブだから、これではやっぱり緑色を見せたときには音が出ることになるね。

 

+のタブをタップし、歯車をタップして、タブの色を緑にする。

新しく緑のタブを作ると、緑を見せたときに初期条件ではなくその新しく作ったタブが実行されることになるね。
新しいタブには音を出すプログラミングブロックは入れていないから、これなら緑を見せたとき音は鳴らないね。

 

Q3. ☆問題☆

ロボットの動く速さが速すぎると、うまく色を感知してくれないね。

ワークブックのミッション3で、カズキは「ロボットの動く速さをゆっくりにする」というくふうをして、この問題点を解決していたよ。

でも、ロボットの動く速さは速いままで、他のくふうで解決することもできるよ。次のうち、解決方法になっているのはどれだろう?

  • チケットを作るとき、細かく切った色紙ではなく、大きく切った色紙を使う。
  • チケットを作るとき、他の色と見間違えそうな色ではなく、あざやかな色の色紙を使う。
  • チケットを作るとき、うすい色の色紙ではなく、濃い色の色紙を使う。
  • プログラムを改造して、1つ1つの音を出し続ける時間を長くする。
  • ロボットを改造して、カラーセンサーが床面すれすれまで近づくようにする。

正解

  • チケットを作るとき、細かく切った色紙ではなく、大きく切った色紙を使う。
  • チケットを作るとき、他の色と見間違えそうな色ではなく、あざやかな色の色紙を使う。
  • チケットを作るとき、うすい色の色紙ではなく、濃い色の色紙を使う。
  • プログラムを改造して、1つ1つの音を出し続ける時間を長くする。
  • ロボットを改造して、カラーセンサーが床面すれすれまで近づくようにする。

解説

そもそも、「動く速さが速すぎるとうまく感知できない」というのは、どういうことだったんだろう?

動く速さが速いというのは、「同じ長さの時間でもたくさんの距離を進むことができる」、ということ。
だから、速いロボットは、音を鳴らしている間にたくさん進んでしまって、チケットの色の部分を通り過ぎてしまうんだ。
これが、うまく感知できなくなる原因なんだね。

 

この

   「動く速さが速すぎて、音を鳴らしている間にたくさん進んでしまい、チケットの色の部分を通り過ぎる」

という仕組みを破壊すれば、うまく感知できるようになるはず。

そのためには、

   「動く速さをゆっくりにする」

   「音を鳴らす時間を短くする」

   「チケットの色の部分を大きくする」

といった対策が考えられる。

問題にあげられたアイディアの中から、これにあてはまるものを探せばいいね。