分解质因数和求因数个数

本文介绍了正整数N分解质因数的方法,通过不断求N mod i并更新N,直至N变为1。同时给出了计算因数个数的公式:M=(x1+1)*(x2+1)*...*(xn+1),其中P1^x1 * P2^x2* ... * Pn^xn是N的质因数分解形式。通过这个公式,可以确定N的因子总数。
摘要由CSDN通过智能技术生成

一个正整数N>1,必定可以分解为若干质因数相乘,即N=2^x1*3^x2*...*prime^xi,prime<=N

分解时一步步求N mod i , 2<=i<=N,然后N /= i,即可,具体证明算了= =。。因为能分解下去就一直分解,得到的数再mod必定mod是质数。

代码:

int i = 1;
while(n > 1)
{
	i++;
	while(!(n % i)) //要一直分解下去
	{
		n /= i;
		cout << i;
		if(n != 1) cout << "*";
	}
}


============================================================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值