素数求和
类型:函数
描述
输入一个正整数n,统计从[0,n]之间的最大的10个素数之和。本题保证测试用例至少有10个满足条件的素数。
例如:输入31 ,应求得3,5,7,11,13,17,19,23,29,31之和。
本题要求使用自定义函数完成,代码框架参考如下:
def isprime(n): #判断素数函数
......
def f(n): #找小于n的素数并求和
......
......
p=int(input())
print(f(p))
示例 1
输入:31
输出:158
参考代码
def isprime(n):
for i in range(2,int(n**0.5)+1):
if n%i==0:
return False
else:
return True
def f(n):
sumPrime,count=0,0
for i in range(n,1,-1):
if isprime(i):
sumPrime = sumPrime + i
count = count + 1
if count == 10:
return sumPrime
num = int(input())
print(f(num))