アルゴリズム (全79問中39問目)

No.39

次の流れ図は,1から100までの整数の総和を求め,結果を変数xに代入するアルゴリズムを示したものであるが,一部誤りがある。どのように訂正すればよいか。
07.gif/image-size:198×359
  • @の処理を "0→x"にする。
  • Aの条件判定を "i:99"にする。
  • Bの処理を "x+i→i"にする。
  • Cの処理を "x+1→x"にする。

分類

テクノロジ系 » アルゴリズムとプログラミング » アルゴリズム

正解

解説

この流れ図では iを1〜100まで変化させながら、xにiを加算することを繰り返すことで1〜100までの総和を計算します。
正しくは 1+2+3+…+100 と計算が行われればいいのですが、この流れ図では、xの初期値に1が指定されているのでループ1回目のBで 1+1→x、2回目では (1+1)+2→x というようにxの初期値の1が余分に加算されてしまうことになります。
  • 正しい。@は変数xを初期化する処理です。iが1から始まるためxの初期値は0としなくてはなりません。
  • i:99とすると分岐判定で100>99となり、iが100のときにはループ内の処理が行われず、100が加算されないことになるため誤りです。
  • xが増えていかず結果が初期値のままになってしまうため誤りです。
  • iが増えていかず永久ループになってしまうため誤りです。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop