上机内容:
用筛选法求1000之内的素数。
上机目的: 学习筛选法与数组。
上机目的: 学习筛选法与数组。
我的程序:
#include<iostream>
#include<iomanip>
#include<cmath>
using namespace std;
int main()
{
int i,j,n,a[1001];
for(i=1;i<=1000;i++)
a[i]=i;
a[1]=0;
for(i=2;i<sqrt(1000);i++)
for(j=i+1;j<=1000;j++)
{
if(a[i]!=0&&a[j]!=0)
if(a[j]%a[i]==0)
a[j]=0;
}
cout<<endl;
for(i=1,n=0;i<=1000;i++)
{
if(a[i]!=0)
{
cout<<setw(5)<<a[i]<<" ";
n++;
}
if(n==10)
{
cout<<endl;
n=0;
}
}
cout<<endl;
return 0;
}
运行结果:
体会总结:首先要知道这个算法,其次就知道怎么样去写程序,写每个程序都得考虑有效的算法。