練習 [4] for 文(1/5)

練習 1(提出プログラム名:p0401a.c)

以下の例のように等差数列の表示と合計の計算ができるプログラムを p0501a.c として作りなさい.
なお,この問題では必ず for 文を使うこととする.
ただし,初項,公差,項数はいずれも整数であると仮定してプログラムを作ってよい.

【注意】
等差数列の和は高校で習う公式を使って計算できるが,
この問題は for 文の練習なので公式を使ってはいけません.for 文による繰り返しで求めること

【気を付けるべき点】
仮に合計値を sum という変数で表すとして,for 文による繰り返しで合計を求める場合には
for 文の前に sum = 0; を必ず書く(初期化を行う)のを忘れないようにしてください.
環境によってはこれを忘れていてもうまくいく(sum の初期値が 0 になっている)こともありますが,どのような環境でも必ずうまく動くという保証はありません.
それゆえ本講義ではうまく動いても変数の初期化忘れは誤りと扱うので注意してください.

  • 【プログラムの実行例】(その1)赤字は実行時にキーボードから入力する内容
初項:5
公差:-2
項数:4
第 1 項 = 5
第 2 項 = 3
第 3 項 = 1
第 4 項 = -1 
この数列の和 = 8
  • 【プログラムの実行例】(その2)赤字は実行時にキーボードから入力する内容
初項:0
公差:3
項数:123
第 1 項 = 0
第 2 項 = 3
第 3 項 = 6

... (中略) ...

第 123 項 = 366
この数列の和 = 22509

【過去にあったミス(減点となり,やり直しを命じられる)】
■ 上の 3 種類の実行例と答えが違っている(きちんと確認していない).
 特に,合計値(最後に出力される和)が間違っていることを見落としている.
■ 合計値を求めるための変数(例えば sum)を for 文に先立って 0 に初期化していない
 (必ず sum = 0; を for 文より前に書くこと!
■ 注意書きを見落としていて「等差数列の和の公式」を使ってしまっている.
インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).


ミスが無いことを確認したら次の問題へ → [ 練習2 (p0402a.c) ]