基本情報トップに戻る
B難易度: 2026年度

基本情報技術者 予想問題B 第72問

問題

次の擬似言語プログラムで、関数doubleSum(arr)はどんな結果を返すか。 ○ 整数型: doubleSum(整数型の配列: arr) 整数型: sum ← 0 整数型: i for (i を 0 から arr の要素数−1 まで 1 ずつ増やす) sum ← sum + arr[i] × 2 endfor return sum

選択肢

  1. 1ア 配列の要素の合計
  2. 2イ 配列の要素の平均
  3. 3ウ 配列の要素の合計の2倍
  4. 4エ 配列の要素の最大値の2倍

正解

3. ウ 配列の要素の合計の2倍

詳しい解説を見る

解説

正解はウ。ループの中身はsum←sum+arr[i]×2であり、各要素を2倍してから累積加算している。数式で表すとΣ(2×arr[i])=2×Σarr[i]となるため、戻り値は「配列の要素の合計の2倍」である。例えば[1,2,3]なら2+4+6=12となり、合計6の2倍に一致する。アの「要素の合計」は×2の部分を見落とした場合の誤りである。イの「平均」を求めるには合計を要素数で割る処理(sum/要素数)が必要だが本問には存在しない。エの「最大値の2倍」を求めるにはif文による比較・更新の処理が必要だが、本問は無条件に加算しているため誤りである。科目Bでは、コードを読んで「何を計算する関数か」を一般化して言い当てる出題が多く、ループ内の式を数学的に整理して考える練習が有効である。

一問一答

科目A 180問+科目B 60問

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。