基本情報技術者試験の科目Bの公開問題を題材に,配列と繰り返し処理について学習します。この問題では,配列の要素を順番に加えながら,新しい配列を作る処理を確認します。
(令和4年度12月公開) 基本情報技術者試験 サンプル問題 科目B 問3
問 次の記述中の に入れる正しい答えを,解答群の中から選べ。ここで,配列の要素番号は1から始まる。
関数 makeNewArray は,要素数2以上の整数型の配列を引数にとり,整数型の配列を返す関数である。関数 makeNewArray をmakeNewArray({3,2,1,6,5,4}) として呼び出したとき,戻り値の配列の要素番号5の値は となる。
〔プログラム〕
○整数型の配列: makeNewArray(整数型の配列: in)
整数型の配列: out ← {} // 要素数0の配列
整数型: i,tail
outの末尾に in[1]の値 を追加する
for (iを2からinの要素数まで1ずつ増やす)
tail ← out[outの要素数]
outの末尾に (tail + in[i]) の結果を追加する
endfor
return out
解答群
| ア 5 | イ 6 | ウ 9 | エ 11 | オ 12 |
| カ 17 | キ 21 |
【解答】カ
【解説】
out の最初の要素には,in[1] の値である3が追加される。その後,for 文によって,out の末尾の値と in[i] の値を加えた結果が,out の末尾に順番に追加される。
よって,戻り値の配列の要素番号5の値は,
17
となる。
この問題のポイント
この問題から学べることは,
- 配列の要素を参照する方法
- for文による繰り返し処理
- 配列の末尾に要素を追加する方法
- 前の計算結果を利用して,次の値を求める処理
- トレース表を使って,配列や変数の値の変化を追跡する方法
です。特に,outの末尾に追加された値を次の計算に利用しながら,配列の要素が順番に作られていくことを理解しておきましょう。
基本情報技術者試験の学習におすすめの参考書
基本情報技術者試験の合格を目指す方におすすめの参考書です。
学習のお役に立ちましたら
この記事が少しでも学習のお役に立ちましたら,今後も分かりやすい解説や学習コンテンツを継続してお届けする励みになります。
よろしければ、このサイトを応援いただけますと嬉しいです。
※OFUSEは,クリエイターやコンテンツ制作を直接支援できるサービスです。

