编写一个 Python 函数程序,获取用户输入的正整数 n,统计从 0-n 之间的最大的 10 个素数列表,以从小到大排序。
时间: 2024-05-03 09:19:20 浏览: 153
Python使用列表完成程序的编写:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到m报数),凡是报到m的人退出圈子,问最后留下的是原来第几号的人。
5星 · 资源好评率100%
可以使用一个 is_prime 函数来判断一个数是否为素数,然后使用一个列表 prime_list 来存储已经找到的素数。我们可以从 0 开始,依次判断每个数是否为素数,如果是素数则加入 prime_list 中。最后对 prime_list 进行排序,并输出前 10 个素数。
下面是一个实现该功能的 Python 函数:
```python
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
def get_prime_list(n):
"""获取从 0-n 之间的最大的 10 个素数列表"""
prime_list = []
for i in range(n+1):
if is_prime(i):
prime_list.append(i)
prime_list.sort()
return prime_list[-10:]
n = int(input("请输入一个正整数 n:"))
prime_list = get_prime_list(n)
print("从 0-{} 之间的最大的 10 个素数列表为:{}".format(n, prime_list))
```
示例输出:
```
请输入一个正整数 n:100
从 0-100 之间的最大的 10 个素数列表为:[29, 31, 37, 41, 43, 47, 53, 59, 61, 67]
```
阅读全文