ITパスポート試験 テクノロジ系 令和5年度|第9問 過去問解説 「整数総和を求める関数」

※本情報は解説作成時点のもので、閲覧時点では法改正等により情報が変更になっている場合がございます。あらかじめご理解いただければ幸いです。

正解は「C.calcX ← calcX + n」です。
関数 sigma は 1 から max までの整数の総和を求めるため、各ループで現在の n を累積変数 calcX に加算する必要があります。

この記事では、ITパスポート試験(令和5年度)で出題されたテクノロジ系の第9問「整数総和を求める関数」について、試験対策の観点からわかりやすく解説します。

プログラムの動作

総和計算=累積変数に各値を順次加算

関数 sigma は、変数 calcX を初期化し、1 から max までの整数 n を順にループで処理します。各ステップで calcX に n を加えることで、1 から max までの総和を求められます。

処理手順の具体例

例:max = 5 の場合

  • 初期 calcX = 0
  • n = 1 → calcX = 0 + 1 = 1
  • n = 2 → calcX = 1 + 2 = 3
  • n = 3 → calcX = 3 + 3 = 6
  • n = 4 → calcX = 6 + 4 = 10
  • n = 5 → calcX = 10 + 5 = 15

最終的に calcX = 15 が戻り値となります。

他の選択肢との違い

  • calcX ← calcX × n → 総和ではなく累積積になる
  • calcX ← calcX + 1 → 1 を加えるだけで n の値を加算していない
  • calcX ← n → 最後の n の値しか残らない

問われているポイント

この問題では、ループ処理による累積計算の考え方を理解し、総和を正しく求めるための計算式を選べるかが問われています。

気を付けてほしい点(勘違いしやすいポイント)

  • calcX に n を加算することを忘れると総和が正しく計算されない
  • 累積積や単純代入にしない

ITパスポート試験での出題パターン

テクノロジ系では、ループ処理や累積計算の基本的な理解が問われます。
for ループと累積変数の使い方を押さえておきましょう。

まとめ

  • 総和を求める場合は累積変数に n を加算する
  • calcX ← calcX + n が正しい式
  • ループ処理の理解がポイント
← 前の解説:ITパスポート試験 テクノロジ系 令和5年度|第8問 過去問解説 「RAIDの容量」
次の解説:ITパスポート試験 テクノロジ系 令和5年度|第10問 過去問解説 「WPA2のPSK」 →