ウカマル応用情報技術者ログイン

平成27年度 秋期 応用情報技術者 問6

テクノロジ系

次に示すユークリッドの互除法(方法 1,方法 2)で,正の整数 a,b の最大公約数は,それぞれ m と n のどちらの変数に求まるか。ここで,m mod n は,m を n で割った余りを表す。

図

図の内容(文字)
〔方法1〕開始 → a → m,b → n → m mod n → r → ループ端「ループ1 r = 0」(前判定:r = 0 で終了)→ n → m → r → n → m mod n → r → ループ端「ループ1」→ 終了。 〔方法2〕開始 → a → m,b → n → ループ端「ループ2」→ m mod n → r → n → m → r → n → ループ端「r = 0 ループ2」(後判定:r = 0 で終了)→ 終了。
選択肢
正解と解説

正解 ウ

方法1は「r = 0」を割り算の直後に判定するので、割った数のnに最大公約数が残ります。方法2は代入の後に判定するので、最大公約数はmに移っています。

a = 12、b = 8 で処理を追います。方法1では、最初に r = 12 mod 8 = 4 です。r が0でないのでループに入り、m = 8、n = 4、r = 8 mod 4 = 0 となって終了します。最大公約数4はnに入っています。方法2では、1回目に r = 4、m = 8、n = 4 となります。2回目に r = 8 mod 4 = 0、m = 4、n = 0 となり、r = 0 で終了します。割り切った数4がmに移っているので、最大公約数はmに求まります。

ア:方法1の終了時点のmは、割り切られた側の数(例では8)です。最大公約数は割った側のnに残ります。

イ:方法1と方法2の両方を逆に読んでいます。方法2では r → n の代入後に判定するので、終了時のnは0です。

エ:方法2は余り0をnに代入した後でループを抜けるので、終了時のnは0です。最大公約数は n → m で移ったmにあります。

出典:平成27年度 秋期 応用情報技術者試験 問6

全年度から出題。10問で実力を判定します。登録不要。

出典:平成27年度 秋期 応用情報技術者試験 問6(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方