it-kakomon › ITパスポート › 令和5年度 › 問64

令和5年度 ITパスポート 問64(テクノロジ)

出典:令和5年度 ITパスポート試験 公開問題 問64(独立行政法人情報処理推進機構(IPA))

関数sigmaは,正の整数を引数maxで受け取り,1からmaxまでの整数の総和を戻り値とする。プログラム中のaに入れる字句として,適切なものはどれか。 〔プログラム〕  ○整数型: sigma(整数型: max)   整数型: calcX ← 0   整数型: n   for (n を 1 から max まで 1 ずつ増やす)    [ a ]   endfor   return calcX
  1. アcalcX ← calcX × n
  2. イcalcX ← calcX + 1
  3. ウcalcX ← calcX + n
  4. エcalcX ← n
正解と解説を見る

正解:ウ

【プログラムの動き】

関数sigmaは、1からmaxまでの整数の合計を求めます。calcXを0から始め、nを1からmaxまで1ずつ増やしながら、calcXにnを足していけば、最後にcalcXが合計になります。そのため、空欄aには calcX ← calcX + n が入ります。

【max = 3 で確かめる】

・n = 1:calcX = 0 + 1 = 1

・n = 2:calcX = 1 + 2 = 3

・n = 3:calcX = 3 + 3 = 6

1 + 2 + 3 = 6 と一致します。

【選択肢の検討】

ア:calcX ← calcX × n では、calcXが0から始まるので、何を掛けても0のままです。

イ:calcX ← calcX + 1 では、1を繰返しの回数だけ足すので、結果はmaxと同じ値になります。

エ:calcX ← n では、毎回nで上書きされるので、結果は最後の値のmaxになります。

よって、正解は選択肢ウです。

まず令和8年度の100問を通しで解いてみる(無料)