我正在尝试用Python创建一个程序来打印连续的素数。在
estPrimes = [2, 3]
num = 3
run = True
while run == True:
for i in range(estPrimes[0], estPrimes[(len(estPrimes) - 1)]):
if i % num == 0:
num += 2
sleep(1)
else:
estPrimes.append(num)
print(num)
sleep(1)
num += 2
它只会以2为单位打印,我知道这与num += 2
有关,但是,为什么它不除以estPrimes列表呢?在
从哪里开始?在
您正在编辑列表,同时对其进行迭代。那通常是病 有人建议会有奇怪的虫子。
你增加
num
无论你的情况如何,这是你的主要问题你要检查你找到的第一个素数和最后一个素数之间的每一个数,而不仅仅是质数
这是你的代码修正
测试用例
^{pr2}$有更好的算法,这里有一个我在附近的:
看看生成所有小于100万的素数需要多长时间
相关问题 更多 >
编程相关推荐