🔢 质数检查器

使用试除法检查到平方根,判断一个数是否为质数。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. 在输入框中输入非负整数。
  2. 点击检查,按钮下方会显示结论。
  3. 如果该数是合数,会显示最小因数(除 1 外)作为提示。

常见问题

1 是质数吗? 不是。按现代定义,质数必须大于 1,所以 1 既不是质数也不是合数。

2 是质数吗? 是的。它是唯一的偶质数;其他偶数都能被 2 整除。

输入可以有多大? BigInt 能保证数值精确,但试除法会随 √n 增大而变慢。12 位以内的数几乎瞬时返回;非常大的输入可能耗时较长。

我的输入会被存储或上传吗? 不会。所有计算都在浏览器中完成,数字永远不会发送到服务器。