Python:用函数思想完成哥德巴赫猜想

Python:用函数思想完成哥德巴赫猜想,第1张

概述哥德巴赫猜想:大于8的偶数之和都可以被两个素数相加范围8-10000思路: 首先不要去管需要什么什么东西实现,所以我们如果知道如何去完成:大于8的偶数之和都可以被两个素数相加:#可以假设这个猜想是正确的。#设一个变量是trueflag=True#确定范围8-10000forfan @H_301_0@哥德巴赫猜想:大于8的偶数之和都可以被两个素数相加@H_301_0@范围 8 - 10000思路:

 

首先不要去管需要什么什么东西实现,所以我们如果知道如何去完成:大于8的偶数之和都可以被两个素数相加:
# 可以假设 这个猜想是正确的。# 设一个变量是trueflag = True# 确定范围 8 - 10000for fanwei in range(8,10000,2):# 如果猜想错误如何?	if not caixiang(fanwei):        flag = False# 正确又如何错误又如何?if flag = True:	 print('猜想正确')else:    print('猜想错误')        
之后我们去写一个函数 来确定这个猜想是否正确,正确就返回 True
def caixiang(n):# 这里需要所有的素数 8 - 10000的# 这里的目的是为了拆分出两素数参数n 和 循环名 m 两个变量    for m in range(1,n//2+1):        if sushu(m) and sushu(n-m):            return True    return False
最后发现还要判断是否是素数:
def sushu(n):    su = 0    for i in range(1,n-1):        c = n%i        if c == 0:            su += 1    return True
这样这个哥德巴赫猜想就完成了。

完整代码:

# 功能:判断是否是一个素数# def sushu(n):#     i = 1  # 需要整从1 开始#     su = 0  # 被整除的次数 如果等于二就是素数#     while i <= n:  # 完成从 a/1 到 a/a 后 结束#         c = n % i  # c为余数#         if c == 0:  # 判断余数是否是0#             su += 1  # 是的话记一个数#         i += 1  # 开始 a/2#     return True# 以上判断素数改成for 循环def sushu(n):    su = 0    for i in range(1,n-1):        c = n%i        if c == 0:            su += 1    return True# 判断猜想:需要所有的素数与fanwei 来判断 两两相加是否等于那个数def caixiang(n):# 这里需要所有的素数 8 - 10000的# 这里的目的是为了拆分出两素数参数n 和 循环名 m 两个变量    for m in range(1,n//2+1):        if sushu(m) and sushu(n-m):            return True    return False# 哥德巴赫猜想:大于8的偶数之和都可以被两个素数相加# 范围  8 - 10000 , 由于是偶数步长为2flag = Truefor fanwei in range(8,10000,2):# 如果猜想错误返回false 所以要设置变量 flagn    if not caixiang(fanwei):        flag = Falseif flag == True:    print('猜想正确')else:    print('猜想错误')

 

总结

以上是内存溢出为你收集整理的Python:用函数思想完成哥德巴赫猜想全部内容,希望文章能够帮你解决Python:用函数思想完成哥德巴赫猜想所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1185194.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存