2023年4月から基本情報技術者の試験制度が変更されました。
試験制度は変更されたものの科目B(旧:午後問題)の重要さは変わりません。
出題方式は「多肢選択式」で以前と同じですが、データ構造及びアルゴリズムが8割、情報セキュリティが2割の割合で出題される点が大きく変わっています。
合格基準点は600点以上/1000点満点中、つまり6割以上取れれば合格になります。
サンプル問題では前半16問が「データ構造及びアルゴリズム」の問題。残り4問が「情報セキュリティ」の問題。となっています。
サンプル問題は公式にIPAから出されている貴重な情報です!
早速、問題を見ていきましょう!
問14 (データ構造及びアルゴリズム)
設問
解答
答え:「ク」
解説
戻り値の配列 rankData について考えていきましょう。
トレースしていきます。
①findRank(sortedData, 0)
i ← (0 × 9) = 0 を切り上げた値 ⇒ 0
return sortedData[1] = 0.1
②findRank(sortedData, 0.25)
i ← (0.25 × 9) = 2.25を切り上げた値 ⇒ 3
return sortedData[4] = 0.4
③findRank(sortedData, 0.5)
i ← (0.5 × 9) = 4.5を切り上げた値 ⇒ 5
return sortedData[6] = 0.6
④findRank(sortedData, 0.75)
i ← (0.75 × 9) = 6.75を切り上げた値 ⇒ 7
return sortedData[8] = 0.8
⑤findRank(sortedData, 1)
i ← (1 × 9) = 9を切り上げた値 ⇒ 9
return sortedData[0] = 1
したがって、戻り値 rankData の内容は{0.1, 0.4, 0.6, 0.8, 1}になります。
よって、正解の選択肢は「ク」になります。
最後に
いかがだったでしょうか。
しっかりトレースして行きましょう。プログラムが複雑に見えるかもしれませんが、理解できないときは試しに値を入れて動きを見てみましょう。プログラムの動きがわかれば、そこまで怖がる問題ではありません。
徐々に難しさも見えてきますが、冷静に解答していきましょう!