1 /*筛选法求素数*/ 2 3 #include <iostream> 4 using namespace std; 5 6 int main() 7 { 8 /*假设prime[i] == 0 是素数, prime[i] == 1是合数*/ 9 int N; 10 cin >> N; //输入范围 11 int *prime = new int[N]; 12 for (int i = 2; i <= N; i++) 13 prime[i] = 0; 14 15 /*筛选掉所有可以被拆分成两个因数相乘的整数*/ 16 for (int i = 2; i <= N; i++) 17 if (prime[i] == 0) //防止重复筛选同一个数 18 for (int j = 2; j < N; j++) 19 prime[i * j] = 1; 20 21 for (int i = 2; i <= N; i++) 22 if (prime[i] == 0) 23 cout << i << endl; 24 return 0; 25 }
用筛求法求素数
猜你喜欢
转载自www.cnblogs.com/hi3254014978/p/10424520.html
今日推荐
周排行