【发布时间】:2016-07-25 12:06:17
【问题描述】:
我为 Python 素数生成器编写了代码,用于生成前 100 个素数。但是,不知何故,我的输出中出现了 22、25 等非素数。我已经一遍又一遍地重新检查了几个小时,仍然无法弄清楚我哪里出错了......请帮忙!
这是我的代码:
from math import sqrt
y=[2]
x=3
while len(y)!=100:
for i in range (2,int(round(sqrt(x)+1))):
if x%i==0:
x=x+1
else:
y.append(x)
x=x+1
break
print(y)
【问题讨论】:
-
查看这个 stackoverflow 页面,可能有用:Simple prime number generator python