ブロックで始める初心者向けプログラミング
チャプター
>
レベル
リストとコレクション
リスト項目の参照
目的
卵のバスケットを取って中の卵の数を確認し、その後、リスト内の位置を参照して卵を正しい容器に配置します。
今日集めた新鮮な卵はバスケットに入れられています。バスケットを取って、各種類の卵がいくつあるかを確認し、しまいましょう。バスケットの中には、"white eggs", "dark eggs", "red eggs" と "blue eggs" の4種類の卵が入っています。
まず、コンテナのそばに置かれたバスケットを取って、テーブルの横にある明るいX印の場所へ歩いて行きます。明るいX印に到着しテーブルに向かって立ったら、while ループブロックを使って、バスケットに入っている卵を確認します。変数 count を0に設定し、count < 4 の間ループが続く while ループを使用します。ループ内では、speak ブロックと text join ブロックを使い、「I have 」と、get item from list を使って取得した位置 count の basket リストの値、「 」と、位置 count の eggs リストの値、「 in compartment 」と count を結合します。そして、change variable by ブロックを使って count を1ずつ増加させます。
バスケットには2つのリスト定数が含まれています。1つは、利用可能な4種類の卵の名前を格納する eggs というリスト、もう1つは各色の卵がバスケットにいくつ入っているかを格納する basket というリストです。
バスケットには0から3まで数えられる4つの仕切りがあり、各色の卵はそれぞれの仕切りに保管されています。これにより、リスト内での位置と順序が次のように示されています: 0 = white eggs, 1 = dark eggs, 2 = red eggs, 3 = blue eggs.
コンテナのそばにある暗いX印の場所へ歩いて行き、place ブロックを使って正しい種類の卵を正しいコンテナに配置します。各コンテナには、どの色の卵が保管されているかを示すサインが付いています。
get item from list ブロックを使ってリスト内の卵の種類がどこにあるかを特定することで、各種の卵にアクセスできます。リスト変数 (basket) とインデックス番号 (0、1、2、または3) を接続して、リスト内の特定の値を取得します。
4つの暗いX印すべての場所に向かい、対応する種類の卵を正しい場所に配置します。例えば、basket とインデックス0を使って get item from list ブロックで値を取得し、その値を白い卵のサインがある暗いX印の place ブロックに接続します。上記の番号付きチャートを参照し、これを place と get item from list と組み合わせて、4つの暗いX印すべてで使用することでレベルをクリアします。