av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python用函數思想完成哥德巴赫猜想代碼分析

瀏覽:54日期:2022-06-17 13:47:57

哥德巴赫猜想:大于8的偶數之和都可以被兩個素數相加

范圍 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%iif c == 0: su += 1 return True

這樣這個哥德巴赫猜想就完成了。

思路擴展:

思路:

可以定義兩個函數,一個判斷是否為素數,一個分解。利用前面的兩個函數生成n范圍內的素數列表。如果兩層for循環中的兩個迭代變量之和等于參數n,就將這兩個變量加入列表中,循環完所有的情況后返回列表,并打印輸出。

參考代碼:

import mathdef isprime(n): #判斷素數 if n == 1:return False elif n == 2:return True else:for i in range(2,int(math.sqrt(n)+1)): if n%i == 0:return Falsereturn True def thonsand(n) : #生成若干個素數,返回素數list a = [] for i in range(1,n+1):if isprime(i): a.append(i) return a'''利用前面的兩個函數生成n范圍內的素數列表兩層for循環,兩個迭代變量之和如果等于參數n就加入列表中循環完所有的情況后返回列表,并打印輸出。'''def gdbh(n): a =[] ls = thonsand(n) for i in ls:for j in ls: if n == i+j:a.append(i)a.append(j) return als2 = gdbh(12)ls3 = gdbh(152)print(ls2)print(ls3)

兩個測試數據 12,152

輸出如下;

[5, 7, 7, 5]

[3, 149, 13, 139, 43, 109, 73, 79, 79, 73, 109, 43, 139, 13, 149, 3]

到此這篇關于Python用函數思想完成哥德巴赫猜想代碼分析的文章就介紹到這了,更多相關Python實現哥德巴赫猜想內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 日韩免费视频 | 日韩在线小视频 | 九九久久精品视频 | 午夜视频在线 | 成人在线免费观看 | 久久久久久久av麻豆果冻 | 给我免费的视频在线观看 | 国产乱码精品一区二区三区中文 | 国产区高清 | av网站推荐 | 看片国产 | 久久国产一区 | 国产一级片免费在线观看 | 亚洲www.| 欧洲高清转码区一二区 | 久久成人久久 | 日韩欧美在线观看一区 | 在线观看国产视频 | 精品综合久久久 | 国产精品成av人在线视午夜片 | 亚洲天堂影院 | 亚洲精品自在在线观看 | 日本三级网站在线观看 | 国产成人精品一区二区三区网站观看 | 国产欧美精品 | 狠狠操天天操 | 自拍偷拍亚洲视频 | 国产一区亚洲 | 欧美a√ | 一级一级一级毛片 | 青青青伊人 | 久久1区| 噜久寡妇噜噜久久寡妇 | 男人视频网站 | 国产成人午夜电影网 | 日本一区二区三区四区 | 99在线播放 | 国产精品高潮呻吟久久久久 | 色婷婷综合久久久中字幕精品久久 | 亚洲成人精选 | 国产欧美一区二区三区日本久久久 |