首页 > 代码库 > Chose_Prime
Chose_Prime
素数筛选
素数也叫质数,即只能被1和自己本身整除的数。在程序中,怎样筛选出在一定范围内中的素数呢?我们可以这样做:
① 先从2开始找,然后删去这一范围中所有能被2整除的数。
② 找到下一个没有被删去的数字n。
③ 删去这一范围内中所有能整除n的数。
④ 如果n*n>"范围最大值"就跳出,否则跳到第②步。
代码:
1 #include <iostream> 2 #define N 100001 3 4 using namespace std; 5 6 int prime[N]; 7 8 void Chose_Prime(int n) 9 {10 prime[0] = 1;11 prime[1] = 1;12 for (int i = 2; i * i <= n; i++)13 {14 if (prime[i] == 0) //找到了没有被删掉的数字i15 {16 for (int j = 2 * i; j <= n; j += i)17 {18 prime[j] = 1; //prime数组里面值为0的便为素数19 }20 }21 }22 23 for (int i = 0; i < n; i++) //打印素数24 {25 if (prime[i] == 0)26 {27 cout << i << endl;28 }29 }30 }31 int main()32 {33 Chose_Prime(100);34 return 0;35 }
Chose_Prime
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。