所以我必须找到从1到500的素数
我查看了各种博客和堆栈溢出问题
但每次我更改代码时,它都会返回
"1 2 3 4 5 6 7 8 9"
我找不到问题。请帮帮我
primary = True
import math
for n in range(2,501):
sqrn=math.sqrt(n)
for div in range (2, int(sqrn)):
if n%div == 0:
primary = False
break
if primary:
print(n, end=" ")
print()
Tags:
您需要将1添加到
sqrt(n)
,因为range
的上限是独占的此外,您需要在每个内部循环之前将
primary
重置为True
,否则您将只能找到一个素数相关问题 更多 >
编程相关推荐