このブログテーマでは、スクラッチの初心者から上級者まで、ちょっとお役に立つ情報を不定期で紹介していきます。
今回のデータの並び替え、リストに保存された10個の数字を大きい順に並び変える方法をご紹介します。
下の動画は不定期配信の「ファイブボックス 一分間スクラッチ講座」です。ご興味のある方は併せてご参照ください。
データの作成
以前の記事「一分間スクラッチ講座 重複しない数字をリストに追加する方法」でご紹介した方法などを使って、事前にリスト「スコア」に10個のデータを作成します。
単純に下のようなコードでも構いません。
データの並び替え
今回のサンプルは、下のスクラッチをご参照ください。
事前作成済みのリスト「スコア」のほかに、並び替え後の順番を格納するリスト「順位」を作っておきます。
さらにスコアをカウントする変数「スコアNo.」、順位をカウントする「順位No.」も併せて用意します。
今回は「スペースキー」を押したとき、スコアがソートされるように作成します。
1,リスト「順位」をいったんリセット(からにします)
2,変数「スコアNo.」を1にする
3, 以下の処理を10回繰り返す
①, 変数「順位No.」を1する
②, リスト「順位」の要素数が変数「スコアNo.」と同じになるまで、つまり1つ目のスコアをチェックする際は1回、2つ目のスコアをチェックする際は2回・・・繰り返す
❶, 「スコア」の「スコアNo.」番目、つまりチェック中の「スコア」と「順位」の1番目、2番目、3番目、「順位No.」番目・・・と比較し、チェック中の「スコア」が大きくなったところで
❷, 「順位」の「順位No.番目」にチェック中の「スコア」(スコアNo.番目)の値を挿入6bpZy5zHqRI
❸, 比較が終わったら「順位No.」を1ずつ加算、次の順番と比較の準備
③, 繰り返しが終わったら「スコアNo.」を1ずつ加算、次のスコアのチェック
では起動してみましょう、どうですか?うまくいきましたよね。
サンプルはこちらでもご確認いただけます。
ファイブボックスでは、Unityやスクラッチの個別指導のオンラインレッスンを行っています。
ご興味のある方は当サイト、オンラインレッスンから、無料体験授業へお問い合わせ下さい。