python接收由键盘输入的两个正整数m和n的值,且m<n。其中100=<m<=200,400=<n<=600,寻找 m~n 之间所有素数,将这些素数写到输出文件“prime.txt”中。要求将素数保存到文件里面时,一行保存4个素数。
时间: 2024-02-13 17:07:01 浏览: 72
从键盘任意输入两个整数,输出两数之间的素数,素数判断用函数实现。 扩展要求:1)程序可以循环执行,判断完一组可以再进行下一组;可以设定一个特殊键退出
5星 · 资源好评率100%
好的,这个问题可以使用Python编写一个程序来解决。以下是代码示例:
```python
import math
# 判断是否为素数
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return False
return True
# 获取m-n之间的所有素数
def get_primes(m, n):
primes = []
for i in range(m, n+1):
if is_prime(i):
primes.append(i)
return primes
# 主函数
if __name__ == '__main__':
# 获取用户输入的m和n值
m = int(input("请输入正整数m(100<=m<=200):"))
n = int(input("请输入正整数n(400<=n<=600):"))
# 判断m和n的大小关系
if m >= n:
print("m必须小于n!")
else:
primes = get_primes(m, n)
# 将结果写入文件
with open("prime.txt", "w") as f:
f.write("m-n之间的素数如下:\n")
for i, p in enumerate(primes):
f.write(str(p))
if (i+1) % 4 == 0:
f.write("\n")
else:
f.write(" ")
```
你只需要运行这个程序,并按要求输入m和n的值,程序会自动在当前目录下生成一个名为“prime.txt”的文件,并将结果写入其中。如果出现任何问题,可以随时向我提问。
阅读全文