【Scratch3.0】リストの中身をランダムに並び替える方法
リストの中身をランダムに並べ替える方法を紹介します。
完成動作
https://scratch.mit.edu/projects/511010131
完成コード
適当なスプライトに以下のコードを作成する。
※あらかじめ、「ランダム並び替え」というリストと、「並び替える番号」「並び替える中身」という変数を作成しておく。
「ランダム並び替え」リストには適当な文字を追加しておく。
解説
・「ランダム並び替え」というリストと、「並び替える番号」「並び替える中身」という変数を作成しておく。
・「ランダム並び替え」リストに任意の文字を追加する。
・変数は画面には表示する必要はないので、隠しておく。
・ランダムに並び替える回数はとりあえず100回にしておいた。
※1回とか2回では一部しか並べ替えてくれないので、ある程度の回数繰り返す必要がある。
・リストの中の何番目を並び替えるかを変数に入れておく。
何番目かはランダムにするために乱数を使う。乱数の最大の数は"ランダム並び替え"リストの長さ。
・並び替える番号の中身の文字を変数に入れておく。
※次のブロックで、並び替える番号を削除するので、事前に中身を変数に入れて保護しておく。
・並び替える番号を削除する
・削除した並び替える番号の中身を、乱数を使ってリストの適当な場所に挿入する。
※乱数の最大は"ランダム並び替えの長さ+1“とした。+1にすることによって、リストの末尾にも挿入されるようになる。
ディスカッション
コメント一覧
まだ、コメントがありません