简介:许多朋友询问python100中的质数之和。本文的首席CTO笔记将为您提供详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!
如果在拍摄中输入100次质数之和,则需要将其转换为一个函数,然后才能计算出函数。
def sundaram3(max_n):
数字=范围(3,max_n+1,2)
半=(max_n)// 2
初始= 4
对于Xrange(3,max_n+1,2)的步骤:
对于i在Xrange(初始,半,步骤)中:
数字[I-1] = 0
初始+= 2*(步骤+1)
如果初始图:
返回[2]+过滤器(无,数字)
打印(sum(Sundaram3(100)))
提问:需要实施两个功能,一个是确定数字是否为素数;另一个是和谐的功能。
实现函数,确定它是否是质量数,is_prime,特定代码如下:
def is_prime(num):
”“”
确定它是否是素数。
:param num:
: 返回:
”“”
结果= true
#质量数量大于1
如果num 1:
#查查
对于我在范围(2,num)中:
if(num%i)== 0:
结果= false
休息
别的:
结果= true
#如果输入号小于或等于1,则不是质量号
别的:
结果= false
返回结果
实现该函数,计算数字启动到结束,总和之间的所有质量数的总和,特定代码如下:
def sum(开始,结束):
”“”
寻求封闭间隔之间的质量总和(启动,结束)。
:param start:
:param end:
: 返回: ”” ””
结果= 0;
对于我的范围(启动,结束 + 1):
如果是is_prime(i):
打印(i)
结果=结果 + i
返回结果
该代码在主函数中调用,代码如下:
如果__name__ =='__ main __':
num = 8
打印(is_prime(num))
num = 5
打印(is_prime(num))
打印(总和(1,5))
完整的代码如下:
#在时使用
Primes = []
n = 2
而n = 100:
i = 2
而i = int(n **(1/2)):
i += 1
如果n%(i -1)== 0:
休息
别的:
Primes += [n]
n += 1
印刷(素数)
打印中的质数之和(f'100是{sum(primes)}')
如图所示,该过程正在收缩
他是1060。
列出了100个质量数字,如下所示:
2、3、5、7、11、13、17、19、23、29、37、41、47、47、59、61、67、67、73、79、79、83、89、97。
2+3+5+7+11+13+17+19+29+29+31+37+43+47+47+53+59+67+67+71+73+83+89+89+97 = 1060
质量也称为元素。自然数大于1,除1本身外,不能除以其他自然数为质量数。否则称为标志。
扩展信息:
质量数字
1.只有两个质量P:1和P。
2.主要数学的基本定理:自然数大于1,要么本身是一个定性数字,要么可以将其分解为几个质量数字,并且这种分解是唯一的。
3.数量是无限的。
分析如下:
#获取100之内的所有质数
ls = [];
对于我的范围(100):
如果我2:
constinue;
#困难:
#1。范围(2,2)返回到空值,直接跳过周期,而无需执行休息,将执行其他语句
#2.for.j执行完成后,如果找不到i%j == 0的值,则证明它是质量数字,断路将不会执行,否则将执行;如果您发现i%j == 0 0的值,证明它不是素数,将执行中断,否则不会执行;
对于J范围(2,i)的J:
如果我%j == 0:
#print(“ {0}不是素数” .format(i));
休息;
别的:
#print(“ {0}是prime的数量” .format(i));
ls.append(i);
打印(LS);
##和和
s = 0;
对于k中的k:
s += k;
印刷);
结论:以上是首席CTO注释为每个人编制的Python100中质数之和的相关内容答案的总和。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?