スクラッチの「リスト」を使ったプログラム(記憶力ゲーム)を紹介します。
【記憶力ゲームの見本】
リンゴ、バナナ、イチゴの3つが順番がバラバラで10個表示された後で、何個目は何だったかをあてるゲームです。
何個目だったか聞く質問も、1コ目から10コ目の中からランダムに表示されます。
まずは、ステージとリンゴのスプライト1つを用意します。
リンゴのスプライトに対して、コスチュームとしてバナナとイチゴを追加します。
このときコスチュームの名前を「リンゴ」「バナナ」「イチゴ」に変更しておきます。
プログラムの中で、この名前で判定を行うので設定しないと上手く動きません。
このプログラムで使用する「回数」「番号」という変数と「答え」というリストを作成します。
「変数を作る」「リストを作る」から作成します。
プログラムの中で、それぞれ次の目的で使用します。
スクラッチのリストとは番号つきの変数のことです。
例えば、「答え」というリストは、答え(1)、答え(2)、答え(3)…と同じ名前(答え)で番号をつけた変数として使うことができます。こうしておくと、答え(1)にはリンゴ、答え(2)にはバナナ、答え(3)にはイチゴを入れておくことができます。
プログラムの中でどのように使うと便利かは下のサンプルを見てみてください。
【プログラム解説】
最初の2行(答えのすべてを削除、回数を1にする)は初期化と呼ばれる処理です。
「10回繰り返す」の中で行っているのが、次々にリンゴ、バナナ、イチゴを表示させるプログラムです。
「コスチュームを1から3までの乱数にする」ことで、リンゴ、バナナ、イチゴの中の何かを表示します。
「コスチュームの名前を答えに追加する」が【答え】リストに設定しているところです。
繰り返しが終わったら、質問を表示するためのプログラムになります。
最後に入力されたものが正解かを判定してメッセージを表示します。
正解かの判定のところにある「もし答え=答えの番号番目なら」の左側の答え(水色)には、キーボードから入力された文字が入っています。
【答え】リストがどのように使われているかを解説します。
プログラムの「10回繰り返す」の中で次のように設定されます(例)。
このあとで、例えば「6番目はなに?」と質問が表示されます。
この「6」を設定するのは、「番号を1から10までの乱数にする」のところです。
番号に6が入っているので、「コスチュームを答えの番号番目にする」のところは、「コスチュームを答えの6番目にする」となります。
答えの6番目【答え】6には、リンゴが入っているので、コスチュームがリンゴになります。
正解かの判定は、画面(キーボード)から入力された文字が水色の(答え)のところに入るので、この文字と【答え】リストの6番目(リンゴ)が同じかを判定しています。
以上です。
最初は難しく感じるかもしれませんが、リストを使ったプログラムにも挑戦してみてください。