78の正解: テクノロジ系アルゴリズムとプログラミング

手続 calcMod3を呼び出したときの出力はどれか。 [プログラム] ○calcMod3() 整数型: totalValue, i totalValue ← 0 for (iを1から7まで1ずつ増やす) if (i÷3の余りが0と等しい) totalValue ← totalValue + i endif endfor totalValue を出力する

この設問が問うていること

ループ処理と条件分岐、剰余(余り)計算を伴うプログラムの実行結果について問う設問です。

2
選択肢の解説: iが3で割り切れる回数や計算誤りのため不適切です。
3
選択肢の解説: iが3のときの値(3)のみを足した不適切な数値です。
7
選択肢の解説: ループの終了値(7)などを誤って出力しているため不適切です。
9正解
選択肢の解説: i=3とi=6のときに条件を満たし、その累積和(3 + 6 = 9)が出力されるため適切です。

総合解説

プログラムを順にトレース(追跡)します。`totalValue`は最初0です。ループで変数`i`は1から7まで変化します。ループ内で「i÷3の余りが0」すなわち「iが3の倍数」である場合のみ、`totalValue`に`i`を加算します。1から7の中で3の倍数は「3」と「6」です。iが3のとき、`totalValue`は「0 + 3 = 3」になり、iが6のとき、`totalValue`は「3 + 6 = 9」になります。ループ終了後、`totalValue`の「9」が出力されます。したがって、正解は選択肢dです。

執筆・監修: 運営者 KH更新日: 2026-07-05出典: IPA公式PDF(過去問題・解答例)
AIAIにその場で質問(デモ応答)

こんな聞き方もできます(タップで質問)

令和7年度を本番同様のCBT形式で解いてみよう

無料登録なしでも一部体験可能。登録すれば採点・弱点分析・AI教科書まで使えます。

令和7年度の過去問CBTを解く