prime = [2]
while len(prime) <= 1000:
i=3
a = 0
for number in prime:
testlist= []
testlist.append(i%number)
if 0 in testlist:
i=i+1
else:
prime.append(i)
i=i+1
print(prime[999])
尝试制作一个计算在线课程素数的程序。该程序永远不会结束,但是我看不到代码中的无限循环。
质数是一个只能被其自身除以一个数的数。
我的逻辑是,如果一个数字可以除以前面的质数,则它不是质数。
最佳答案
正如您对问题的注释所指出的那样,您的代码中存在多个错误。
这是您的代码正常工作的一个版本。
prime = [2]
i = 3
while len(prime) <= 1000:
testlist = []
for number in prime:
testlist.append(i % number)
if 0 not in testlist:
prime.append(i)
i = i + 1
print prime
关于python - Python素数计算器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24252934/