python编程找出 N(即小于等于 N )的所有素数
时间: 2024-10-14 18:11:09 浏览: 43
python使用筛选法计算小于给定数字的所有素数
在Python编程中,我们可以编写一个函数来找出小于等于给定整数 N 的所有素数。素数是指只有两个正因数(1 和自身)的大于1的自然数。以下是利用“埃拉托斯特尼筛法”(Sieve of Eratosthenes)实现的一个简单示例:
```python
def find_primes(n):
primes = [True] * (n + 1) # 初始化一个布尔列表,所有元素设为真,表示初始状态下都是素数
p = 2 # 素数从2开始
while p * p <= n:
if primes[p]: # 如果p是素数,则将它的倍数标记为非素数
for i in range(p * p, n + 1, p):
primes[i] = False
p += 1
# 输出所有小于等于n的素数
prime_numbers = [i for i in range(2, n+1) if primes[i]]
return prime_numbers
# 调用函数并打印结果
n = int(input("请输入一个整数:"))
print(find_primes(n))
阅读全文