为了方便运算就出现了埃氏筛法。
1/5 C++
#include<iostream>
using namespace std;
int a[10000005]; //0是质数 1不是质数
int main(){
freopen("test1.in","r",stdin); //重定向
freopen("test1.out","w",stdout);
int n;
cin>>n;
for(int i=2;i<=n/i;i++){
if(!a[i]){
//把i的倍数去掉
for(int j=2*i;j<=n;j+=i){
a[j]=1;
}
}
}
for(int i=2;i<=n;i++){
if(!a[i]) cout<<i<<" ";
}
fclose(stdin); //关闭保存
fclose(stdout);
return 0;
}
//埃氏筛法:用途 求范围内质数
//3383
2/5 C++
#include <iostream>
using namespace std;
#include <cstring>
const int N = 1e5; //即 10,0000
bool isPrime[N + 5]; //标记每个数,如果为true,则为质数,否