Scratchでリストを使う(その2)応用編

前回の続きです。前回ではScratchでリストを使う方法について基本的な内容を書きました。今回はもう少し応用的な内容について書きます。具体的にはリストのデータに意味を持たせて利用します。

以下の内容で書きます。

1.リストのデータでScratchキャットを移動させる
リストに複数の移動距離(歩数)を保持してその順番に移動させてみます。

2.おみくじプログラム
リストに大吉、小吉などのデータを保持して乱数を発生させておみくじを表現します。

リストのデータでScratchキャットを移動させる
このScratchのプログラムのダウンロードはこちらから

リストの移動距離(歩数)でその順番に移動してみます。加速するイメージを表現してみます。作成方法を順番に書きます。

まずは、変数「通し番号」とリスト「移動距離」を作ります。それぞれ、変数を作るのボタンとリストを作るのボタンから作ります。以下が出来た状態です。(※画像は全てクリックで単独表示されます。)

もちろん、変数名、リスト名は任意です。「添え字」とか「移動歩数」とか自分で分かりやすいように決めて下さい。

次に移動距離リストに移動歩数を登録します。以下のようにリストの表示ボックスのプラスから追加して値を入力します。

ここで1番目のデータが作成されたのでクリックすると入力出来るようになります。

10という数字を入力しました。これが歩数になります。

最終的に以下のように追加しました。この距離の意味は徐々に一度に移動する距離を大きくして加速するイメージを表現しようとしています。

このリストで加速していくイメージのプログラムが以下です。

リストの値で順番に移動していますが、0.1秒待つがあるので何とか加速しているように見えると思います。まあ同じ画像なので走っているようには見えないですがスピードの変化は見えると思います。

実行する時はScratchキャットが移動出来るように左下にあることを確認します。移動はマウスのドラッグで出来ます。(通し番号を1にした後で動きのブロックで左下に自動的に移動させることも出来ます。)数字を変えればいろいろな動きが出来ると思います。

おみくじプログラムを作る
このScratchのプログラムのダウンロードはこちらから
次はおみくじプログラムを作ります。乱数を発生させて大吉等のおみくじを表示します。
リストにはおみくじとして以下を登録します。凶は1個にします。
大吉・吉・中吉・小吉・末吉・凶

変数にはこれのどれを指すかという数値をおみくじ番号として作成します。

おみくじの処理としては1から6までの乱数を発生させてその通し番号のおみくじの内容を表示します。
以下のようなプログラムです。

実行例は以下です。

プログラムの説明ですが、1から6までの乱数をおみくじリストの通し番号としてその内容を表示しています。そのため、もしおみくじの項目を増やした場合はリストにその内容を追加して乱数の範囲を広げるだけで修正が出来ます。

これをもしリストを使わずに乱数の変数で処理することを考えるとどうなるでしょうか。この場合は1から6までを順番に判定してそれぞれの内容を表示させることになると思います。6回の判定ぐらいであれば何とか書けるとは思いますが、それよりもリストを使った方が正確で効率がいいです。

ここにもう少しだけおみくじらしくなるように、処理を追加してみます。運勢が出ますと表示して、結果が出るまでに少し時間をとって、結果に言葉を追加します。

緑色の〇と〇は文字列を並べる(連結する)処理です。

以上、今回はリストの内容に意味を持たせて2種類のプログラムを書いてみました。
今回はここまでです。