Scratch 2分探索法課題3

Scratch 2ぶんたんさくほうだい

だいないよう

を2ぶんたんさくほうもちいてたんさく

かいとう

かいとうひょうする

はいけい

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

↓↓↓↓↓

定義 変数初期化
[上 v]を(1)にする
[下 v]を([リスト v]の長さ::list)にする
[結果 v]を(0)にする
定義 探索値入力

↓↓↓↓↓

定義 探索値入力
[探す値を入力してください。]と聞いて待つ
[探索値 v]を(答え)にする
定義 2分探索

↓↓↓↓↓

定義 2分探索
<(上)>(下)>まで繰り返す
[選択場所 v]を((((上)+(下))/(2))の[切り下げ v]::operators)にする
[選択値 v]を([リスト v]の(選択場所)番目)にする
もし<(探索値)=(選択値)>なら
[結果 v]を(選択場所)にする
[このスクリプトを止める v]
でなければ
もし<(探索値)<(選択値)>なら
[下 v]を((選択場所)-(1))にする
でなければ
[上 v]を((選択場所)+(1))にする
end
end
end

かいせつ

かいせつひょうする

はいけい

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

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

[上 v]を(1)にする
[下 v]を([リスト v]の長さ::list)にする
[結果 v]を(0)にする

へんすうしょせってい

定義 探索値入力

ていたんさくにゅうりょく」がされたとき、かいする

[探す値を入力してください。]と聞いて待つ
[探索値 v]を(答え)にする

からにゅうりょくしたすうへんすうたんさく」にかくのうする

定義 2分探索

ていぶんたんさく」がされたとき、かいする

<(上)>(下)>まで繰り返す
end

へんすううえ」がへんすうした」よりおおきくなるまでかいかえ

[選択場所 v]を((((上)+(下))/(2))の[切り下げ v]::operators)にする
[選択値 v]を([リスト v]の(選択場所)番目)にする

へんすうせんたくしょ」をへんすううえ」がへんすうした」のなかにする
へんすうせんたく」にへんすうせんたくしょばんようかくのうする

もし<(探索値)=(選択値)>なら
[結果 v]を(選択場所)にする
[このスクリプトを止める v]
end

へんすうたんさく」とへんすうせんたく」がひとしいならへんすうけっ」にへんすうせんたくしょ」をかくのうして、しゅうりょうする

もし<(探索値)<(選択値)>なら
[下 v]を((選択場所)-(1))にする
でなければ
[上 v]を((選択場所)+(1))にする

へんすうたんさく」とへんすうせんたく」のだいしょうかんけいによってへんすううえ」またはへんすうした」をへんこうする

sb3