【发布时间】:2023-02-17 19:34:54
【问题描述】:
大家好:)(我对此很陌生)
我正在玩一段简单的代码,它应该打印给定范围内的素数。
nums = range(1, 11)
for number in nums:
if number > 1:
for i in range(2, number):
if(number % i) == 0:
break
else:
print(number)
我得到的输出如下...
5
5
5
7
7
7
7
7
9
我不明白为什么它会多次打印素数。
我希望它能打印出数字……
3,5,7,9
但似乎无法理解为什么它打印 5 3 次和 7 5 次等。
【问题讨论】:
-
如果您将打印更改为:
print(number, i),您可能会开始明白发生了什么。 -
我认为 9 不是质数,因为它有 3 个因数 (1, 3, 9)
-
啊你是对的。 9不应该在那里