【发布时间】:2018-11-26 14:31:18
【问题描述】:
我正在尝试编写自己的公式来查找素数,但它并不完全有效,而且我找不到我的逻辑中的缺陷。请记住,我环顾四周,但找不到与我相似的算法。
我的代码:
#Challenge 7
prime = []
num = 0
found = False
while found == False:
if num == 0 or num == 1:
num+=1
else:
for value in range(2, num+1):
if len(prime) == 50:
print('Found all')
found = True
break
if num % value == 0:
num+=1
else:
if num not in prime:
prime.append(num)
else:
pass
print(prime)
此代码适用于前几个素数(3、5、7...) 但它也给出了不正确的值,比如 10,我不明白为什么。如果有人可以向我解释一下,以便我理解逻辑错误在哪里,我将不胜感激。
【问题讨论】:
标签: python-3.x primes