アルゴリズムとプログラミング

基本情報技術者試験 科目A免除 修了試験 20191208 実施分 問10

正の整数 M に対して,次の二つの流れ図に示すアルゴリズムを実行したとき,結果 x の値が等しくなるようにしたい。a に入れる条件として,適切なものはどれか。
左の流れ図: 開始 → x←1 → ループ端(上)「演算 / n:M,−1,1」→ x←(x×n) → ループ端(下)「演算」→ 終了。注記「ループ端の繰返し指定は,変数名:初期値,増分,終値を示す。」 右の流れ図: 開始 → x←1 → n←1 → x←(x×n) → n←(n+1) → 判断「a」(Yes: 終了,No: x←(x×n) の手前へ戻る)。
  • ア n<M
  • イ n>M−1
  • ウ n>M
  • エ n>M+1

出典:基本情報技術者試験 科目A免除 修了試験 20191208 実施分 問10

答えと解説を見る

正解:ウ

覚える知識

繰返し流れ図の終了条件の読解(後判定ループ)

後判定ループではn←n+1の後で判定するため、終了条件はn>Mとなる。

この問題で必要なこと

左はnをMから1まで減らしながら掛けるM!、右はn=1から増やして掛け、n+1後にn>Mで終了すればM回掛けてM!になる。

ひっかけ

n>M−1やn>M+1にすると掛ける回数が1回ずれる。

この知識の出題:本試験系 0 回・免除試験 3 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「流れ図の基本構造とループの終了条件」で学ぶ

同じ知識の過去問