python写代码 输入一个大于 2 的整数 n,计算 2~n 之间所有的质数,要求用列表储存计算结果。
时间: 2024-05-05 16:17:09 浏览: 9
以下是Python代码:
```python
n = int(input("请输入大于2的整数n:"))
primes = [] # 储存质数的列表
for i in range(2, n+1):
is_prime = True # 设定i为质数
for j in range(2, i):
if i % j == 0: # i可以被j整除,说明i不是质数
is_prime = False
break
if is_prime: # 如果i是质数,将其添加到列表中
primes.append(i)
print("2~{}之间的质数为:{}".format(n, primes))
```
代码解释:
1. 首先通过 `input` 函数获取大于 2 的整数 n。
2. 创建一个空列表 `primes`,用于储存质数。
3. 使用 `for` 循环遍历 2 到 n 之间的所有整数,判断每个数是否为质数。
4. 判断质数的方法是:对于每个数 i,遍历 2 到 i-1 之间的所有整数,看是否能够整除 i。如果能够整除,说明 i 不是质数,将 `is_prime` 设定为 False。如果不能整除,说明 i 是质数,将 `is_prime` 设定为 True。
5. 如果 `is_prime` 为 True,说明 i 是质数,将 i 添加到 `primes` 列表中。
6. 循环结束后,输出 `primes` 列表即可。
注意:这个算法不是最优解,对于大型数据集,需要使用更高效的算法。