
正文
python素数求和函数 python计算素数之和
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
python如何算质数和
python素数求和函数你好python素数求和函数的python素数求和函数!
import math
def is_prime(n): # 简化问题python素数求和函数,先利用函数判断是否为质数
if n == 1: # =是赋值python素数求和函数,==才是判断,切记切记
return False
for i in range(2, int(math.sqrt(n))+1): # 质数判断条件,注意+1
if n % i == 0:
return False
return True
primes = []
name = int(input())
for i in range(1, name): # 注意这个逗号,很容易写错!
if is_prime(i) is True: # bool值用is判断
primes.append(i)
print('100以内的素数:{}\n100以内素数和:{}'.format(primes, sum(primes)))
欢迎追加悬赏并采纳!
相关问答
Q1: python用while求100以内素数并求和
# 用while求100以内素数并求和
primes = []
n = 2
while n = 100:
i = 2
while i = int(n**(1/2)):
i += 1
if n % (i - 1) == 0:
break
else:
primes += [n]
n += 1
print(primes)
print(f'100以内素数之和为{sum(primes)}')
程序缩进如图所示
Q2: python求1~100之间的所有素数之和
解题思路:需要实现两个函数,一个是判断数字是否是素数;一个是求和函数。
实现函数,判断是否是素数,is_prime,具体代码如下:
def is_prime(num):
"""
判断是否是素数.
:param num:
:return:
"""
result = True
# 质数大于 1
if num 1:
# 查看因子
for i in range(2, num):
if (num % i) == 0:
result = False
break
else:
result = True
# 如果输入的数字小于或等于 1,不是质数
else:
result = False
return result
实现函数,计算数字start到end之间的所有素数之和,sum,具体代码如下:
def sum(start, end):
"""
求闭区间[start, end]之间的素数之和.
:param start:
:param end:
:return: """
result = 0;
for i in range(start, end + 1):
if is_prime(i):
print(i)
result = result + i
return result
在main函数中调用求和,代码如下:
if __name__ == '__main__':
num = 8
print(is_prime(num))
num = 5
print(is_prime(num))
print(sum(1, 5))
完整 代码如下:
Q3: python求200以内所有素数和
# 求200以内所有素数和
p = []
for i in range(2,201):
for j in range(2,int(i*(1/2))+1):
if i % j == 0:
break
else:
p.append(i)
print(f'200以内所有素数和为{sum(p)}')
程序缩进如图所示
python素数求和函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python计算素数之和、python素数求和函数的信息别忘了在本站进行查找喔。






