【Scratch3.0】リストの中身をランダムに並び替える方法

2021年4月4日Scratch

スポンサーリンク

リストの中身をランダムに並べ替える方法を紹介します。

完成動作

https://scratch.mit.edu/projects/511010131

完成コード

適当なスプライトに以下のコードを作成する。
※あらかじめ、「ランダム並び替え」というリストと、「並び替える番号」「並び替える中身」という変数を作成しておく。
「ランダム並び替え」リストには適当な文字を追加しておく。

解説

・「ランダム並び替え」というリストと、「並び替える番号」「並び替える中身」という変数を作成しておく。

画面に表示する必要はないので、チェックは外しておいた。

・「ランダム並び替え」リストに任意の文字を追加する。

・変数は画面には表示する必要はないので、隠しておく。

・ランダムに並び替える回数はとりあえず100回にしておいた。
※1回とか2回では一部しか並べ替えてくれないので、ある程度の回数繰り返す必要がある。

・リストの中の何番目を並び替えるかを変数に入れておく。
 何番目かはランダムにするために乱数を使う。乱数の最大の数は"ランダム並び替え"リストの長さ。

・並び替える番号の中身の文字を変数に入れておく。
※次のブロックで、並び替える番号を削除するので、事前に中身を変数に入れて保護しておく。

・並び替える番号を削除する

・削除した並び替える番号の中身を、乱数を使ってリストの適当な場所に挿入する。
※乱数の最大は"ランダム並び替えの長さ+1“とした。+1にすることによって、リストの末尾にも挿入されるようになる。

Scratch

Posted by ton