流れ図とユークリッドの互除法
左側の流れ図の動作を確認します。 初期値 $x \leftarrow 1$ の後,ループ端で $n$ は $M$ から $1$ まで $-1$ ずつ減少しながら $x \leftarrow x \times n$ を繰り返します。これにより,最終的な結果は $M$ の階乗 $M!$($M \times (M-1) \times \cdots \times 1$)となります。 次に右側の流れ図の動作を確認します。 初期値 $x \leftarrow 1,\ n \leftarrow 1$ とし,ループ内で $x \leftarrow x \times n$,$n \leftarrow n + 1$ を実行した後に条件 $a$ を判定します。 1巡目:$x = 1 \times 1 = 1!$,$n = 2$ 2巡目:$x = 1! \times 2 = 2!$,$n = 3$ … $M$ 巡目:$x = (M-1)! \times M = M!$,$n = M + 1$ $x$ が $M!$ となった時点での $n$ の値は $M + 1$ です。このタイミングでループを終了(Yes)し,それ以前($n \le M$)では繰り返す(No)必要があるため,終了判定の条件 $a$ は $n > M$(または $n = M + 1$)が適切です。 したがって,正解はウとなります。 M=3 として、右側の流れ図をトレースします(判定は n を1増やした後)。 繰返し x ← x×n n ← n+1 条件 n > 3 動き 1回目 1×1=1 2 偽 繰り返す 2回目 1×2=2 3 偽 繰り返す 3回目 2×3=6 4 真 終了(x=3!=6) n > M−1(イ)だと2回目の後の n=3 で終了して x=2 になり、n > M+1(エ)だと4回目まで回って x=24 になります。
流れ図
最大公約数とユークリッドの互除法
正の整数
M
M
M
に対して,次の二つの流れ図に示すアルゴリズムを実行したとき,結果
x
x
x
の値が等しくなるようにしたい。
a
a
a
に入れる条件として,適切なものはどれか。
出典
令和6年度 春期 応用情報技術者試験 午前 問5
ア
n
<
M
n < M
n
<
M
イ
n
>
M
−
1
n > M - 1
n
>
M
−
1
ウ
n
>
M
n > M
n
>
M
エ
n
>
M
+
1
n > M + 1
n
>
M
+
1
前の問題
スキップ
【正解・解説】流れ図とユークリッドの互除法|令和6春 応用情報 午前 問5 | IT資格ラボ