用filter求素数

Posted WWBlog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用filter求素数相关的知识,希望对你有一定的参考价值。

 1 def _odd_iter():
 2     n = 1
 3     while True:
 4         n = n+2
 5         yield n
 6         
 7 def _not_divisible(n)   :
 8     return lambda x: x % n >0
 9 
10 def primes():
11     yield 2
12     it = _odd_iter() #初始序列
13     while True:
14         n = next(it) #返回序列的第一个数
15         yield n
16         it = filter(_not_divisible(n), it)
17         
18         
19 for n in primes():
20     if n < 200:
21         print(n)
22     else:
23         break

 

以上是关于用filter求素数的主要内容,如果未能解决你的问题,请参考以下文章

python 求100以内所有素数

用C++求50~100内的素数,具体问题如下

1.33 (过滤累积和 求区间内所有素数之和)

如何用python求友素数

用C++编写程序求100以内的所有素数(质素)的和。

C语言求范围之内素数的和与个数?