什么是因数计算器?
这款工具能找出你输入的整数的每一个正因数(约数)。它会按从小到大的顺序列出全部因数,把它们两两组合成因数对,并以展开式和指数式两种形式给出质因数分解,同时告诉你这个数是质数、合数,还是两者都不是。无论输入的是正整数还是负整数都能使用,因为两种情况下约数的绝对值是完全相同的。
使用方法
在“求以下数字的因数:”输入框中填入一个整数并提交即可。计算结果会把因数的个数作为醒目的标题数字展示出来,下方则是一张详细的表格。注意:0 不被接受,因为任何非零整数都能整除它(约数有无穷多个);而 1 会被标记为既不是质数也不是合数。
计算原理详解
计算器采用试除法,只需试除到 \(n\) 的平方根即可。对于从 1 到 \(\lfloor\sqrt{n}\rfloor\) 的每一个 \(i\),如果 \(n \bmod i\) 等于 0,那么 \(i\) 和 \(\frac{n}{i}\) 都是因数,这样就自然得到了一组组因数对:$$i \times \frac{n}{i} = n$$ 质因数分解则是不断除以最小的质数,可写成 $$n = p_1^{a_1} \times p_2^{a_2} \times \cdots \times p_k^{a_k}$$ 此时因数个数为 $$d(n) = (a_1+1)(a_2+1)\cdots(a_k+1)$$ 当一个数恰好只有两个因数(1 和它本身)时它是质数;因数多于两个时则是合数。
实例演算:72
\(\sqrt{72}\) 约为 8.49,所以我们试除 \(i = 1\) 到 8。找到的约数是 1、2、3、4、6、8、9、12、18、24、36、72 —— 共 12 个因数,组成 6 对:\(1\times72\)、\(2\times36\)、\(3\times24\)、\(4\times18\)、\(6\times12\)、\(8\times9\)。质因数分解为 $$72 = 2 \times 2 \times 2 \times 3 \times 3 = 2^3 \times 3^2$$ 由于有 12 个因数,72 是合数。
常见问题
为什么完全平方数的因数个数是奇数?因为它的平方根会和自身配成一对(例如 36 的因数对是 \(6 \times 6\)),所以这个因数只被计算了一次。
1 是质数吗?不是。1 只有一个因数,属于既不是质数也不是合数的情况。
负数有因数吗?有。负数约数的绝对值和它的绝对值的约数相同,因此我们直接给出 \(|n|\) 的正约数。