ZH
我的工具

最大公约数(GCD)计算器 — 辗转相除法

求最大公约数,给出辗转相除法的每一步、贝祖系数 x 和 y、最小公倍数,以及存在时的模逆元。

会计入最大公约数和最小公倍数;贝祖系数只使用 a 和 b
最大公约数
21
gcd(1071, 462)
最小公倍数
23,562
精确的最小公倍数
贝祖系数 x
-3
贝祖系数 y
7
贝祖等式
21 = 1,071 × (−3) + 462 × 7
a·x + b·y = gcd(a, b)
是否互质?
否 — a 和 b 有公因数 21
辗转相除法
阶段除法商余数
gcd(1071, 462)1,071 = 2 × 462 + 1472147
gcd(1071, 462)462 = 3 × 147 + 21321
gcd(1071, 462)147 = 7 × 21 + 070
我的工具 →
广告

这个最大公约数计算器用辗转相除法(欧几里得算法)求两个整数的最大公约数,并按数论和编程课程的呈现方式列出每一步除法。它还运行扩展算法,给出满足 ax + by = gcd(a, b) 的贝祖系数 x 和 y,以及两数互质时的模逆元。添加更多整数,即可一次化简整个列表。

使用方法

  1. 输入两个整数 a 和 b。
  2. 可选:再列出要计入最大公约数和最小公倍数的整数。
  3. 查看最大公约数,并在表中跟随辗转相除的各步。
  4. 贝祖系数和模逆元可用于丢番图方程和密码学练习。

计算公式

gcd(a, b) = gcd(b, a mod b),重复直到余数为 0

每一步都用较大的数除以较小的数所得的余数替换较大的数,最后一个非零余数就是最大公约数。把各步反向代入,就得到满足 a·x + b·y = gcd(a, b) 的整数 x 和 y,这就是贝祖等式;另外 lcm(a, b) = |a × b| ÷ gcd(a, b)。

示例

当 a = 1071、b = 462 时:1071 = 2 × 462 + 147,462 = 3 × 147 + 21,147 = 7 × 21 + 0。最后一个非零余数给出 gcd = 21。反向代入得 21 = 1071 × (−3) + 462 × 7,所以 x = −3,y = 7,最小公倍数为 1071 × 462 ÷ 21 = 23,562。

常见问题

为什么辗转相除法这么快?

每两步余数至少减半,因此步数随位数增长,而不是随数的大小增长。即使是 15 位的输入,也远在 100 步之内完成。

什么叫互质?

当两个整数的最大公约数为 1 时,它们互质,例如 8 和 15。只有此时 a 才有模 b 的逆元。

怎样由此得到模逆元?

当 gcd(a, b) = 1 时,系数 x 满足 a·x ≡ 1 (mod b)。对于 a = 3、b = 11,逆元是 4,因为 3 × 4 = 12 = 11 + 1。

数的正负号有影响吗?

非零数列表的最大公约数为正数,所以 gcd(−12, 18) = 6。贝祖系数会随之调整,使等式在你输入的符号下仍然成立。

最后更新:

引用此工具
APA

kakaoCalc. (2026, November 8). 最大公约数(GCD)计算器 — 辗转相除法. https://kakao.mobile/zh/tools/gcd-calculator/

MLA

“最大公约数(GCD)计算器 — 辗转相除法.” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/gcd-calculator/.

广告