文章
67
粉丝
207
获赞
29
访问
37.2k
#include <iostream>
#include <math.h>
using namespace std;
int cc(long long int c){
int index=1;
//double c1=c;
for(int i=2;i<=sqrt(c*1.0);i++)
{
if(c%i==0){
index=0;
break;
}
}
if(index==0)
return 0;
else
return 1;
}
int main(){
long long int a=0;
long long int count=0;
while(cin >> a){
count=0;
while(a){
if(cc(a)==1){
count++;
break;
}
for(int i=2;i<a;i++){
if(cc(i)==0)
continue;
else{
if(a%i==0){
a=a/i;
count++;
//cout << count << a<< endl;
break;
}
else {
continue;
}
}
}
}
cout << count << endl;
}
system("pause");
return 0;
}
两个地方
1.判断是否为素数的函数一定要用sqrt
2.主函数中每一次循环都要判断是否为素数
登录后发布评论
暂无评论,来抢沙发