Scratch 基数ソート課題3

Scratch すうだい

だいないよう

すうもちいてしょうじゅんなら

かいとう

かいとうひょうする

はいけい

へんこうへんこうへんこう
定義 変数初期化

↓↓↓↓↓

定義 変数初期化
[状態 v]を[未整列]にする
[桁数 v]を(0)にする
定義 基数ソート

↓↓↓↓↓

定義 基数ソート
(最大桁数)回繰り返す
バケツ生成::custom
[選択場所 v]を(1)にする
[桁数 v]を(1)ずつ変える
([リスト v]の長さ::list)回繰り返す
[選択値 v]を([リスト v]の(選択場所)番目)にする
[バケツ選択場所 v]を((((([リスト v]の(選択場所)番目)/(((桁数)-(1))の[10 ^ v]::operators))の[切り下げ v]::operators)を(10)で割った余り)+(1))にする
[バケツ選択文字列 v]を([バケツ v]の(バケツ選択場所)番目)にする
[バケツ v]の(バケツ選択場所)番目を((バケツ選択文字列)と((選択値)と[|]))で置き換える
[選択場所 v]を(1)ずつ変える
end
バケツ取り出し::custom
end
定義 バケット取り出し

↓↓↓↓↓

定義 バケツ取り出し
[バケツ選択場所 v]を(1)にする
[選択場所 v]を(1)にする
([バケツ v]の長さ::list)回繰り返す
[バケツ選択文字列 v]を([バケツ v]の(バケツ選択場所)番目)にする
もし<<(バケツ選択文字列)=[|]>ではない>なら
[位置 v]を(2)にする
[数値 v]を()にする
[バケツ選択文字列長 v]を((バケツ選択文字列)の長さ::operators)にする
(バケツ選択文字列長)回繰り返す
[文字 v]を((バケツ選択文字列)の(位置)番目の文字)にする
もし<<(文字)=[|]>ではない>なら
[数値 v]を((数値)と(文字))にする
でなければ
[リスト v]の(選択場所)番目を(数値)で置き換える
[選択場所 v]を(1)ずつ変える
[数値 v]を()にする
end
[位置 v]を(1)ずつ変える
end
end
[バケツ選択場所 v]を(1)ずつ変える
end

かいせつ

かいせつひょうする

はいけい

へんこうへんこうへんこう
定義 変数初期化

ていへんすうしょ」がされたとき、かいする

[状態 v]を[未整列]にする

へんすうしょせってい

定義 基数ソート

ていすう」がされたとき、かいする

(最大桁数)回繰り返す
バケツ生成::custom
[選択場所 v]を(1)にする
[桁数 v]を(1)ずつ変える
([リスト v]の長さ::list)回繰り返す
[選択値 v]を([リスト v]の(選択場所)番目)にする
[バケツ選択場所 v]を((((([リスト v]の(選択場所)番目)/(((桁数)-(1))の[10 ^ v]::operators))の[切り下げ v]::operators)を(10)で割った余り)+(1))にする
[バケツ選択文字列 v]を([バケツ v]の(バケツ選択場所)番目)にする
[バケツ v]の(バケツ選択場所)番目を((バケツ選択文字列)と((選択値)と[|]))で置き換える
[選択場所 v]を(1)ずつ変える
end
バケツ取り出し::custom
end

1ばんからけたばんばんあたいたいおうする」のしょれる。
おなあたいでもふくすうれられるように「|」で

定義 バケット取り出し

ていし」がされたとき、かいする

[バケツ選択場所 v]を(1)にする
[選択場所 v]を(1)にする
([バケツ v]の長さ::list)回繰り返す
[バケツ選択文字列 v]を([バケツ v]の(バケツ選択場所)番目)にする
もし<<(バケツ選択文字列)=[|]>ではない>なら
[位置 v]を(2)にする
[数値 v]を()にする
[バケツ選択文字列長 v]を((バケツ選択文字列)の長さ::operators)にする
(バケツ選択文字列長)回繰り返す
[文字 v]を((バケツ選択文字列)の(位置)番目の文字)にする
もし<<(文字)=[|]>ではない>なら
[数値 v]を((数値)と(文字))にする
でなければ
[リスト v]の(選択場所)番目を(数値)で置き換える
[選択場所 v]を(1)ずつ変える
[数値 v]を()にする
end
[位置 v]を(1)ずつ変える
end
end
[バケツ選択場所 v]を(1)ずつ変える
end

」の1ばんかられていく
れつながさと「|」でふくすうにもたいおうする

sb3