我一直在想项目Euler的第7个问题。我已经解决了我的Python代码,但它没有输出,我不知道是否存在任何语法和逻辑问题。你能帮我检查一下它有什么问题吗?这是原始问题:
通过列出前六个素数:2,3,5,7,11和13,我们可以看到第6个素数是13.什么是10个第001个素数?
def isprime(n):
for i in range(2,n):
if n % i == 0:
return False
return True
x = 3
counter = 2
while counter <= 10001:
if isprime(x):
counter += 1
x += 2
else:
x += 2
print (x)
在以下修复后,您的逻辑工作正常:
请注意,您的实施效率低下。但是,它确实有效。
def isprime(n):
for i in range(2, n):
if n % i == 0:
return False
return True
x = 3
counter = 2
while counter <= 10001:
if isprime(x):
counter += 1
x += 2
else:
x += 2
print(x-2) # 104743