1
劳动节
埃拉托斯特尼筛法
,简称 埃氏筛
或 爱氏筛
,是一种由希腊数学家 埃拉托斯特尼
所提出的一种简单 检定素数 的算法。要得到自然数n以内的全部素数,必须把不大于根号n的所有素数的倍数剔除,剩下的就是素数。
给出要筛数值的范围n,找出以内的素数。先用2去筛,即把2留下,把2的倍数剔除掉;再用下一个质数,也就是3筛,把3留下,把3的倍数剔除掉;接下去用下一个质数5筛,把5留下,把5的倍数剔除掉;不断重复下去……
python代码如下:
#!/usr/bin/python3.4
# -*- coding: utf-8 -*-
def divided(array):
arrlist = []
for i in range(0, len(array)):
if i != 0:
if array[i] % array[0] != 0:
arrlist.append(array[i])
return arrlist, array[0]
def getprimes(number):
arrlist = []
for i in range(2, number + 1):
arrlist.append(i)
primes = []
newarrlist, prime = divided(arrlist)
primes.append(prime)
while True:
array = newarrlist
if len(array) == 0:
break
else:
newarrlist, prime = divided(array)
primes.append(prime)
print(primes)
if __name__ == "__main__":
number = 120
getprimes(number)
运行结果为:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113]
爬虫代码不知道怎么写
关注公众号让作者帮你解决!
网站已运行3059天18小时28分36秒。
公元 年 月 农历乙巳年 蛇年
1 劳动节 2 初五 3 初六 4 青年节 5 立夏 6 初九 7 初十 8 十一 9 十二 10 十三 11 十四 12 十五 13 十六 14 十七 15 十八 16 十九 17 二十 18 廿一 19 廿二 20 廿三 21 小满 22 廿五 23 廿六 24 廿七 25 廿八 26 廿九 27 五月 28 初二 29 初三 30 初四 31 端午节 |