【解説】基本情報技術者試験 サンプル問題 問14

2023年4月から基本情報技術者の試験制度が変更されました。

試験制度は変更されたものの科目B(旧:午後問題)の重要さは変わりません。

出題方式は「多肢選択式」で以前と同じですが、データ構造及びアルゴリズムが8割、情報セキュリティが2割の割合で出題される点が大きく変わっています。

合格基準点は600点以上/1000点満点中、つまり6割以上取れれば合格になります。

サンプル問題では前半16問が「データ構造及びアルゴリズム」の問題。残り4問が「情報セキュリティ」の問題。となっています。

サンプル問題は公式にIPAから出されている貴重な情報です!

早速、問題を見ていきましょう!

 

 

問14 (データ構造及びアルゴリズム) 

設問

出典:基本情報技術者試験 科目B試験サンプル問題








 

解答 

答え:「ク」

 

 

解説

戻り値の配列 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}になります。

 

よって、正解の選択肢は「ク」になります。

 

 

 

最後に

いかがだったでしょうか。

しっかりトレースして行きましょう。プログラムが複雑に見えるかもしれませんが、理解できないときは試しに値を入れて動きを見てみましょう。プログラムの動きがわかれば、そこまで怖がる問題ではありません。

徐々に難しさも見えてきますが、冷静に解答していきましょう!