🧮 最大公约数(GCD)用辗转相除法逐步算出,最小公倍数(LCM)由 `a × b ÷ GCD` 得到;支持两个或多个数字。计算在浏览器本地完成,数字不上传。

🧮 输入数字

0 个数字
输入至少 2 个正整数后点「开始计算」。

⚠️ 使用提示:① 只接受正整数,0 与负数会被拒绝(数学上 GCD(0, n) = n,但本工具为了直观起见不接受 0);② 多个数字的 GCD / LCM 是逐次两两计算得到的;③ 数字很大时 LCM 会超出 JavaScript 安全整数范围(2^53−1),此时结果会标注「已溢出,仅供参考」;④ 数字只在你的浏览器里计算,不上传。

🧮

最大公约数 / 最小公倍数

数学工具 完全免费 🌙 支持黑夜模式 🔒 本地计算,不上传 🔢 支持多个数 📜 步骤可追溯

分披萨要切几块才公平、两个齿轮多久对齐一次、分数约分要约掉多少——背后都是 GCD 与 LCM。
① 多个数字:不只两个,一次算 3 个、5 个也行;
② 步骤透明:把辗转相除的每一步列出来,作业能直接抄过程;
③ 溢出提示:LCM 超过 JS 安全整数时会明确标注;
④ 零安装:打开网页就能算。
全程在你自己的浏览器里计算,数字不上传。

类别数学工具
算法欧几里得算法(辗转相除)
输入≥2 个正整数
运行环境所有现代浏览器

核心特性

多个数字
辗转相除步骤
GCD 与 LCM
溢出提示
分隔容错
不上传

关于这个工具

怎么实现:
① GCD:欧几里得算法 `gcd(a, b) = gcd(b, a mod b)`,直到余数为 0,最后的除数即答案;
② 多数字:从左到右两两归约,`gcd(a, b, c) = gcd(gcd(a, b), c)`;
③ LCM:`lcm(a, b) = a / gcd(a, b) × b`(先除后乘,减少溢出);
④ 溢出判断:结果超过 `Number.MAX_SAFE_INTEGER` 时标注提示。
它不做:不做扩展欧几里得(求贝祖系数)、不做大整数运算。

怎么用

  1. 第 1 步
    输入两个或更多正整数(逗号 / 空格 / 换行都行)。
  2. 第 2 步
    点「🧮 开始计算」,上方直接给出 GCD 与 LCM。
  3. 第 3 步
    看下方「辗转相除过程」,逐行对照验算。

更新记录

  • v1.0 2026-09-22 工具正式上线:基于欧几里得算法的 GCD 与 LCM 计算,支持两个或多个数字、逗号 / 空格 / 换行多种分隔、辗转相除步骤逐行展示与大数溢出提示。本地计算不上传,适配黑夜模式与移动端。

常见问题

为什么不接受 0?
数学上 `gcd(0, n) = n`、`lcm(0, n) = 0` 是有定义的,但对多数人来说反直觉,容易误用。
本工具因此只接受正整数。如果你确实需要算含 0 的情况,把 0 换成那个非零数即可(结果相同)。
结果标注「已溢出」是什么意思?
JavaScript 的安全整数上限是 2^53 − 1(约 9.0 × 10^15)。LCM 增长很快,超过这个范围后数字会丢失精度。
出现该提示时结果仅供参考,请用 Python 等支持大整数的工具复核。

💬 留言板 0

全部留言需审核通过后展示
💬

还没有留言,来抢沙发吧!

✍️ 说点什么
0 / 500
图形验证码