素数,就是只能被自己和一整除的数。在程序设计时很多时候都会涉及到素数的求法,而我也恰好也又一次遇到这个问题。所以在这里聊聊素数的求法。相信大家对一般的素数的求法应该很了解,所以我在这里也就不啰嗦了,直接来谈谈本次的方法——厄拉多塞素数筛选法!

题目:求前200里的素数并且输出!
算法思想(个人理解,有误望指出):
1、先初始化一个数组, 将数组全部初始为一个值!
2、进行循环判断,从二开始,到 200,依次取出2的倍数3的倍数......且小于200
3、将存在倍数情况的数组的值赋值为另外一个值。
4、重新再次遍历数组,取出值是原来赋初值的下标,这个下标就是所要求的素数。
C语言代码实现:

Python代码实现:

网友评论