什么是质因数分解?
质因数分解(也叫整数分解或因数分解)就是把一个正整数拆成若干个质数(素数)相乘的形式。根据算术基本定理,任何大于 1 的整数都有且只有一种这样的分解方式(不计因数的排列顺序)。本计算器可对 2 到将近 10 万亿(13 位数)之间的任意整数求出它的质因数,并用四种方式呈现结果:乘积形式、指数形式、CSV 列表,以及可选的因数树。
使用方法
在输入框中填入一个大于 1 的正整数并提交即可。如果想看直观的拆解过程,可勾选"生成因数树"。计算结果会显示展开后的质因数(例如 2 x 2 x 5 x 5)、紧凑的指数形式(2^2 x 5^2)、逗号分隔的列表、不同质因数的个数、计入重数的质因数总数,以及前 5000 个质数范围内每个因数对应的质数序号 Prime[n]。
公式与算法
本工具采用试除法。它先把所有的因数 2 除尽,然后依次用奇数除数 3、5、7…… 去试除,只要除数的平方不超过当前剩余值就继续。每当某个除数能整除时,就记录下它并把它除掉。最后剩下的若大于 1,那么它本身就是一个质因数。之所以只需试到平方根,是因为任何合数都必定含有一个不超过其平方根的因数。
$$\text{Number} = p_1^{e_1} \times p_2^{e_2} \times \cdots \times p_k^{e_k}$$实例演算:n = 100
\(100 / 2 = 50\),\(50 / 2 = 25\),于是得到两个 2。接着 25 不能被 3 整除,但能被 5 整除:\(25 / 5 = 5\),\(5 / 5 = 1\),于是得到两个 5。因此质因数为 2、2、5、5。写成乘积是 2 x 2 x 5 x 5,指数形式为 2^2 x 5^2。其中不同的质数有 2 个,质因数总数为 4 个。验证:
$$2 \times 2 \times 5 \times 5 = 100$$质数序号:\(2 = \text{Prime}[1]\),\(5 = \text{Prime}[3]\)。
常见问题
数字 1 怎么算? 1 既不是质数也不是合数,没有质因数,所以计算器会把它作为特殊情况单独说明。
如果我输入的本身就是质数呢? 像 13 这样的质数,它唯一的质因数就是自己,指数形式也只是 13。
最大能分解多大的数? 最大可达将近 10 万亿。接近上限且含有较大质因数的数可能需要稍等片刻,因为试除法要一路检验到平方根。