応用情報技術者試験ナビ ロゴ 応用情報技術者試験ナビ
本日は試験日

応用情報技術者試験 令和6年春 午前問5 解説付き過去問

問題

正の整数Mに対して、次の二つの流れ図に示すアルゴリズムを実行したとき、結果xの値が等しくなるようにしたい。 aに入れる条件として、適切なものはどれか。

正解

解説

正の整数Mに対して、二つの流れ図のアルゴリズムを実行したときに結果Xが等しくなるような条件aを求める。

二つの流れ図の動作を以下で詳しく示す。

  • 左側の流れ図の動作
    左側の流れ図は、次のような動作をする。
    1. 初期値として X = 1 を設定する。

    2. n を M から始め、1 になるまで1ずつ減らしながら繰り返し処理を行う。

    3. 繰り返しの中で X に n を掛ける。

    4. 繰り返しが終了すると、その時点の X の値を結果として出力する。

    このアルゴリズムを M = 3 として具体的に示すと以下の通りになる。
    - n = 3 の場合:X = 1 × 3 = 3
    - n = 2 の場合:X = 3 × 2 = 6
    - n = 1 の場合:X = 6 × 1 = 6
    - ループ終了後の結果:X = 6

    つまり、左側の流れ図の最終結果は M の階乗(M!)となる。

  • 右側の流れ図の動作
    右側の流れ図は、次のような動作をする。
    1. 初期値として X = 1、n = 1 を設定する。

    2. n が条件aを超えるまで、1ずつ増やしながら繰り返し処理を行う。

    3. 繰り返しの中で X に n を掛ける。

    4. 繰り返しが終了すると、その時点の X の値を結果として出力する。

    このアルゴリズムを M = 3 として具体的に示すと以下の通りになる。
    - n = 1 の場合:X = 1 × 1 = 1、次に n は2になる
    - n = 2 の場合:X = 1 × 2 = 2、次に n は3になる
    - n = 3 の場合:X = 2 × 3 = 6、次に n は4になる
    - n = 4 で条件aを満たし、ループ終了すると結果は X = 6 となる。

    つまり、右側の流れ図の結果が M! になるのは、条件aが M より大きいとき(n > M)である。

  • 両方の流れ図が一致する条件
    左側の流れ図は常に M! を出力するため、右側の流れ図も M! となる必要がある。
    右側の流れ図が M! になるためには、条件aは n > M である必要がある。

    したがって、適切な条件は「n > M」となる。

以上から、この問題の正解は「n > M」である。