埃氏篩法素數打表
阿新 • • 發佈:2021-01-11
技術標籤:c++
素數打表,輸入n,輸出1到n所有素數,n<=2000(給沃茲基看的=-=)
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
bool is_Prime[2005];
int n;
void sieve()
{
for(int i=2;i<=2000;i++)
{
if (is_Prime[i])
for(int j=2*i;j<=2000;j+=i)
is_Prime[j]=false;
}
}
int main()
{
int n;
cin>>n;
for(int i=2;i<=2000;i++) is_Prime[i]=true;
sieve();
for(int i=0;i<=n;i++)
if(is_Prime[i]) cout<<i<<" ";
}