我创建了一个素数测试算法,但它不起作用。
本质上,这些是我的程序采取的步骤:
- 询问用户寻找素数的下限和上限
- 一个数组,素数,将存储我的素数
- 嵌套的 for 循环;第一个
for loop
取用户下限和上限之间的每个数字,然后检查这些数字中的每一个是否可以被 2 和用户上限之间的任何数字整除 - 如果上下界之间的任何数都可以被 2 和用户的上界之间的任何数整除,则该数显然不是素数。
- 否则,将数字附加到数组素数:
lower = int(input("Lower Bound: "))
upper = int(input("Upper Bound: "))
print ("Primes between " + str(lower) + " and " + str(upper) + ": ")
primes = []
for i in range (lower, upper):
for num in range (2, upper/2):
if i % num == 0:
print (str(i-(lower-1)) + ". " + str(i) + " = No")
break
else:
primes.append(i)
print(primes)
但是,无论一个数字是否为素数,该函数总是输出 no,但我不知道为什么!