平成29年度電験3種問題解説・機械問18

【解答】(5)(1)

(a)

このフローチャートは、選択ソートのアルゴリズムです。選択ソートは、ソート対象範囲の中から最も小さいデータを見つけ出し、ソート対象範囲の先頭と交換することでソートしていくものです。

最初は先頭のa[1]とa[2]~a[5]を比較し、それが終わればa[2]とa[3]~a[5]を比較し、その次はa[3]とa[4]・a[5]を比較し、最後にa[4]とa[5]を比較して、それぞれの場面で小さい方の数字を前に持ってくるわけです。

これが分かってしまえば、出力されるa[5]は初期値の中で最も大きい数値の8であることが分かります。

(b)

フローチャート中のX部分は数値を入れ替える処理ですから、(2,3,8,6,5)を(2,3,5,6,8)にするために必要な入れ替え回数は3回です。アルゴリズムに沿って考えると、

  • (2,3,8,6,5)→(2,3,6,8,5)→(2,3,5,8,6)→(2,3,5,6,8)

と変化していきます。

コメントを残す