输入任意一个正整数,以列表个数打印输出该整数以内的所有素数。写一段Python3代码满足该问题要求。输入样例:5,输出样例:[2,3,5]
时间: 2024-09-21 09:11:43 浏览: 48
python判断所输入的任意一个正整数是否为素数的两种方法
5星 · 资源好评率100%
你可以使用Python的Sieve of Eratosthenes算法来找出指定范围内的所有素数。下面是一个简单的函数实现,它接受一个正整数作为输入,并返回该数范围内的素数列表:
```python
def find_primes(n):
primes = []
sieve = [True] * (n+1) # 初始假设所有数字都是素数
# 根据素数筛法,将非素数标记为False
for i in range(2, int(n**0.5)+1):
if sieve[i]:
for j in range(i*i, n+1, i):
sieve[j] = False
# 将筛选出的素数添加到结果列表中
for i in range(2, n+1):
if sieve[i]:
primes.append(i)
return primes
# 示例
input_num = 5
output = find_primes(input_num)
print(f"输入 {input_num},输出:{output}")
#
阅读全文