n的階乘的因子分解

求n的階乘的因子個數:ios

例子:求8!的因子個數。ide

笨方法:spa

先求8的階乘,就是1*2*3....*8=sum,而後sum除1,除2,除3...一直到sum除sum,餘數是0就計數器+1code

 1 #include<iostream>
 2 #include<cmath>
 3 using namespace std;
 4 int main()
 5 {
 6     long sum=1;
 7     for(int i=1;i<=8;i++)
 8     {
 9         sum*=i;
10     }
11     cout<<"sum="<<sum<<endl;
12     int n=0;
13     for (long i=1;i<=sum;i++)
14     {
15         if (sum%i==0)//i是一個因子
16         {
17             n++;
18         }
19     }
20     cout<<"n="<<n<<endl;
21 
22     system("pause");
23 }
View Code

其餘方法:blog

設8!=2p*3q*5m*7n;求出對應的p,q,m,n。io

8!=27*32*51*71event

因子個數=(7+1)*(2+1)*(1+1)*(1+1)=96class

相關文章
相關標籤/搜索