我试图找到2和n之间的素数的数量,其中n由用户提供。我似乎无法使其发挥作用。这是我的代码:
>>> def numOfPrime(n):
count = 0
for i in range(2,n):
p = True
for j in range(2,i):
if i % j ==0:
p = False
if p == True:
count += 1
return count
>>> numOfPrime(100)
0
答案 0 :(得分:1)
if
块的缩进不正确。它应该在循环中。
def numOfPrime(n):
count = 0
for i in range(2,n):
p = True
for j in range(2,i):
if i % j ==0:
p = False
if p == True:
count += 1
return count
现在numOfPrime(100)
返回25,正确占据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。