🔢 质数检查器
使用试除法检查到平方根,判断一个数是否为质数。BigInt 支持大整数。
这个数是质数吗?
关于质数检查器
这个质数检查器完全在浏览器中运行。输入任意非负整数,它会告诉你该数是否为质数,并在不是质数时给出最小因数。算法使用试除法检查到平方根,并采用 BigInt 运算以确保大整数精确无误。
质数检测原理
- 定义 —— 质数是大于 1 的自然数,只有 1 和它本身两个正因数。
- 试除法 —— 检测 n 时,依次用从 2 到
⌊√n⌋的每个整数 d 去除 n。如果某个 d 能整除 n,则 n 是合数;否则 n 是质数。 - 为什么 √n 就够了 —— 如果 n = a × b,且 a、b 都大于 √n,则 a × b > n,矛盾。因此至少有一个因数 ≤ √n。
- 优化 —— 单独处理 2,然后只测试奇数除数(3、5、7、…),工作量减半。
如何使用检查器
- 在输入框中输入非负整数。
- 点击检查,按钮下方会显示结论。
- 如果该数是合数,会显示最小因数(除 1 外)作为提示。
常见问题
1 是质数吗? 不是。按现代定义,质数必须大于 1,所以 1 既不是质数也不是合数。
2 是质数吗? 是的。它是唯一的偶质数;其他偶数都能被 2 整除。
输入可以有多大? BigInt 能保证数值精确,但试除法会随 √n 增大而变慢。12 位以内的数几乎瞬时返回;非常大的输入可能耗时较长。
我的输入会被存储或上传吗? 不会。所有计算都在浏览器中完成,数字永远不会发送到服务器。