python编写函数primenumber(n),用于判断正整数n是否为素数,若是素数则返回True,否则返回False。输入一个大于2的正整数m,调用函数primenumber(),统计范围[2,m]内的所有素数之和
时间: 2023-12-03 19:43:59 浏览: 100
python 输入一个正整数判断它是不是素数 示例
5星 · 资源好评率100%
以下是代码实现:
```python
def primenumber(n):
if n <= 1: # 排除小于等于1的非素数
return False
elif n == 2: # 2是素数
return True
else:
for i in range(2, int(n**0.5)+1): # 判断n是否有因数
if n % i == 0:
return False
return True
m = int(input("请输入一个大于2的正整数:"))
sum_prime = 0
for j in range(2, m+1):
if primenumber(j):
sum_prime += j
print("[2,{}]内的所有素数之和为:{}".format(m, sum_prime))
```
函数`primenumber(n)`的实现思路是,首先排除小于等于1的非素数,然后对于大于1的数,从2开始遍历到其平方根,如果存在因数,则不是素数,返回False;否则为素数,返回True。
调用`primenumber()`函数,对范围[2,m]内的所有数进行判断,若为素数,则加入素数和`sum_prime`中。最终输出素数和即可。
注意,这里的范围是包括2和m的,因此需要在`range()`函数中将m+1作为终止条件。
阅读全文