Python求素数算法:查找0到1000的所有素数
Python求素数算法:查找0到1000的所有素数
素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。以下是用Python代码查找0到1000的所有素数:
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
primes = []
for i in range(1001):
if is_prime(i):
primes.append(i)
print(primes)
代码解释:
-
is_prime(n)函数用于判断一个数n是否为素数。- 首先判断
n是否小于等于1,如果是则直接返回False,因为1和非正数不是素数。 - 然后从2开始循环到
int(n**0.5) + 1,判断n是否能被循环变量i整除。如果能被整除,则说明n不是素数,返回False。 - 如果循环结束后都没有返回
False,则说明n不能被2到int(n**0.5)之间的任何一个数整除,因此n是素数,返回True。
- 首先判断
-
主程序使用一个循环遍历0到1000的所有整数。
-
对于每个整数,调用
is_prime()函数判断它是否为素数。 -
如果是素数,则将其添加到
primes列表中。 -
最后打印
primes列表,输出所有0到1000的素数。
运行结果:
运行以上代码,将会输出0到1000之间的所有素数。
原文地址: https://www.cveoy.top/t/topic/f3DQ 著作权归作者所有。请勿转载和采集!