菜鸟 起步 求解惑
#include <iostream>
using namespace std;
int main()
{
int i,j,a=0 ;
for(i=501;i<=799;i++);
for(j=2;j<=i-1;j++)
if (i%j==0) break;
if(j==i) a++;
cout<<"cnt="<<a<<endl;
return 0;
}
输出500到800间素数个数 求修改
[解决办法]
- C/C++ code
#include <iostream>#include <math.h>using namespace std;bool IsPrime(int n){ bool bRet = true; for (int i=2;i<=sqrt((double)n);i++) { if (n%i==0) { bRet = false; break; } } return bRet;}int main(){ int i,j,a=0 ; for(i=501;i<=799;i++) { if(IsPrime(i)) a++; } cout<<"cnt="<<a<<endl; return 0;}
[解决办法]
- C/C++ code
#include <iostream>using namespace std;int main(){ int i,j,a=0,s=0,t=1 ; for(i=501;i<=799;++i) { for(j=2;j<=i-1;++j) if (i%j==0) break; if(j==i) { a++; s=s+t*i; t=-t; } } cout<<"cnt="<<a<<endl; cout<<"s="<<s; return 0;}