使用函数求区间内素数和。写一个函数fun(m,n)用于求区间[m, n]内所有素数, 用户输入正整数m,n(1<=m<n)以空格间隔。 提示:找到的素数存入列表中。
时间: 2023-12-14 21:39:12 浏览: 121
输入两个非负整数m,n(n>=m) 输出m,n区间的所有平方数之和 例如: 输入: 4,9 输出: 13
以下是使用函数求区间内素数和的Python代码:
```python
def is_prime(num):
if num <= 1:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
def fun(m, n):
primes = []
for i in range(m, n + 1):
if is_prime(i):
primes.append(i)
return sum(primes)
m, n = map(int, input().split())
print(fun(m, n))
```
首先定义了一个`is_prime`函数来判断一个数是否是素数,如果是返回True,否则返回False。
然后定义了`fun`函数,它接受两个参数`m`和`n`,表示要求素数和的区间范围。
在`fun`函数中,我们遍历区间内的所有数,对每个数调用`is_prime`函数来判断是否是素数。如果是素数,则将其加入`primes`列表中。
最后,返回`primes`列表中所有素数的和。
用户输入的`m`和`n`通过`map`函数转换为整数,然后传给`fun`函数计算结果并输出。
阅读全文