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)

代码解释:

  1. 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
  2. 主程序使用一个循环遍历0到1000的所有整数。

  3. 对于每个整数,调用 is_prime() 函数判断它是否为素数。

  4. 如果是素数,则将其添加到 primes 列表中。

  5. 最后打印 primes 列表,输出所有0到1000的素数。

运行结果:

运行以上代码,将会输出0到1000之间的所有素数。

Python求素数算法:查找0到1000的所有素数

原文地址: https://www.cveoy.top/t/topic/f3DQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录