Scratch 挿入ソート課題3

Scratch そうにゅうだい

だいないよう

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

かいとう

かいとうひょうする

はいけい

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

↓↓↓↓↓

定義 変数初期化
[状態 v]を[未整列]にする
[挿入元場所 v]を(0)にする
[選択場所 v]を(0)にする
定義 挿入ソート

↓↓↓↓↓

定義 挿入ソート
[挿入元場所 v]を(2)にする
(([リスト v]の長さ::list)-(1))回繰り返す
[挿入元値 v]を([リスト v]の(挿入元場所)番目)にする
[選択場所 v]を((挿入元場所)-(1))にする
[選択値 v]を([リスト v]の(選択場所)番目)にする
<<(選択場所)<(1)>または<(選択値)<(挿入元値)>>まで繰り返す
[リスト v]の((選択場所)+(1))番目を(選択値)で置き換える
[選択場所 v]を(-1)ずつ変える
[選択値 v]を([リスト v]の(選択場所)番目)にする
end
[リスト v]の((選択場所)+(1))番目を(挿入元値)で置き換える
[挿入元場所 v]を(1)ずつ変える
end

かいせつ

かいせつひょうする

はいけい

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

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

[状態 v]を[未整列]にする
[入替場所 v]を(1)にする
[選択場所 v]を(0)にする
[最小場所 v]を(0)にする

へんすうしょせってい

定義 挿入ソート

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

[挿入元場所 v]を(2)にする

へんすうそうにゅうもとしょ」に2ばんかくのうする

((リスト v]の長さ::list)-(1))回繰り返す
end

へんすうそうにゅうもとしょ」がさいまでかえ

[挿入元値 v]を([リスト v]の(挿入元場所)番目)にする
[選択場所 v]を((挿入元場所)-(1))にする
[選択値 v]を([リスト v]の(選択場所)番目)にする

へんすうそうにゅうもとしょ」の1つまえしょあたいへんすうせんたくしょ」・「せんたく」にかくのうする

<<(選択場所)<(1)>または<(選択値)<(挿入元値)>>まで繰り返す
[リスト v]の((選択場所)+(1))番目を(選択値)で置き換える
[選択場所 v]を(-1)ずつ変える
[選択値 v]を([リスト v]の(選択場所)番目)にする
end

へんすうせんたく」がへんすうそうにゅうもと」より大きくなるまでうわきしてかえ

[リスト v]の((選択場所)+(1))番目を(挿入元値)で置き換える

へんすうそうにゅうもと」をへんすうせんたく」がへんすうそうにゅうもと」よりおおきくなるまえかくのうする

[挿入元場所 v]を(1)ずつ変える

へんすうそうにゅうもとしょ」をつぎにする

sb3