Re: [分享] 計算π到小數點下一億位

看板C_and_CPP (C/C++)作者 (if Chen)時間1月前 (2025/03/15 03:03), 1月前編輯推噓9(9022)
留言31則, 4人參與, 1周前最新討論串2/2 (看更多)
計算π到小數點下一億位之我見(1) 原po很厲害,寫出的程式計算π到小數點下一億位,所花時間只需6分鐘,我思索這 個問題都不止6天了XD所以我嘗試將這個過程寫下來,看是不是我有什麼地方漏了, 請大家一起來檢視。 對程式設計師而言,要敢拍胸脯保證這π一億位中的第6千萬位是正確的,抱歉,我 無法做這保證,所以我還在研究中XD原po當然敢,因為程式是他寫的XD 對程式設計師來說,要保證所求是正確的,第一、您所用演算法是正確的或可接受的 ,第二、沒有重大BUG。第二點大多數人很難在一開始就做這樣的保證,君不見 Windows到現在還在研發中,當然它有新的功能被加入,但也無法否認更新一直在出 版,這部份確實一直有新的BUG被報告。現在對我而言我比較在意第1點。因為要保證 無錯誤,即使是微軟也無法保證,退而求其次,當然要保證所用演算法是正確或可接 受的。這部分定義問題就很重要了。我怎麼看這問題,回到問題,π是什麼?是圓周 率... 看π的定義:圓周率為圓周長與直徑的比率,它是個常數,是個實數,是個無窮位數 的一個常實數。那我要怎麼去求這個數,尤其是用電腦求出前面一憶位數。 我們先看看古代怎麼求解,一開始是 3. 然後3.1 3.14然後到近代,小數點下十億... 百億...為什麼古人這麼笨?不要怪他們,這個問題一開始根本是一個測量問題,怎麼 求?就真的拿尺拿線去量測,所以精度很難要求,差別是用的工具不同。但是現代人 聰明了...從分析學的角度看事情... 人變聰明了嘛,人總是要進步...我們從小學過的公式多不多?跟圓周率π有關的呢? 我記不了這麼多,腦子不好使,那就讓我孤狗:含有圓周率π的數學公式有那些? 我找到維基的百科全書「含圓周率的公式列表」,先從古典幾何來看: ( https://zh.wikipedia.org/zh-tw/%E5%90%AB%E5%9C%86%E5%91%A8%E7%8E%87%E7%9A %84%E5%85%AC%E5%BC%8F%E5%88%97%E8%A1%A8 ) ( 短網址: https://tinyurl.com/mt83dbwy ) C=2πr > π=(1/2)*(C/r) C是周長 問題點:都是測量值 再看下去... A=πr平方 A是圓面積 V=(3/4)*πr三次方 V是球體積 這些都有測量上的問題,所以它們無法精密精準... ...下次再寫吧...先去巡邏...Orz PS: 下次要看這個問題,可能要請大家先去研讀維基古典幾何的下一個部份:分析 因為我發現在BBS上輸入數學式子很苦手...有礙大家的眼...我就不掙扎了XD Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.226.163 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1741979024.A.EE7.html ※ 編輯: if4 (220.129.156.70 臺灣), 03/15/2025 09:53:32

03/15 09:31, 1月前 , 1F
先睡覺,睡飽再從級數開始學怎麼算 pi 好嗎XD?
03/15 09:31, 1F

03/15 16:51, 1月前 , 2F
這部分我推薦看這個影片,算是 pi 脫離幾何學的介紹
03/15 16:51, 2F

03/15 16:51, 1月前 , 3F

03/15 19:37, 1月前 , 4F
謝謝<3 請問有沒有中文版的?我英文不太好 Ore
03/15 19:37, 4F

03/15 19:38, 1月前 , 5F
Orz
03/15 19:38, 5F

03/16 00:55, 1月前 , 6F
我前面是說我花了不止6天去研究這問題 那還客氣了 我從小就在
03/16 00:55, 6F

03/16 00:58, 1月前 , 7F
想這問題 我看過一本書 整本書就在寫圓周率 3.1415926535
03/16 00:58, 7F

03/16 01:01, 1月前 , 8F
小時候在猜測這到底怎麼求出來 那時我還不會寫程式 稍稍長大
03/16 01:01, 8F

03/16 01:04, 1月前 , 9F
瞭解更多 我連公式都要自己去驗算 覺得電腦好厲害
03/16 01:04, 9F

03/16 01:07, 1月前 , 10F
這是我研究程式設計最大的動力啊
03/16 01:07, 10F

03/16 01:16, 1月前 , 11F
現代有電腦真好 然後有量子電腦 我不知道我可不可以活著用它
03/16 01:16, 11F

03/16 16:06, 1月前 , 12F
它的字幕有中文的呀
03/16 16:06, 12F

03/16 19:38, 1月前 , 13F
好 <3 我再看看,謝謝您
03/16 19:38, 13F

03/18 14:03, 4周前 , 14F
右上角語言點中文,英文網頁連結比較好貼
03/18 14:03, 14F

03/18 14:05, 4周前 , 15F
wikipedia.org/wiki/Bailey–Borwein–Plouffe_formula
03/18 14:05, 15F

03/18 14:06, 4周前 , 16F

03/18 14:08, 4周前 , 17F
你看分母那個 16^k 和 2^{10n}, 適合 16 進位制的計算
03/18 14:08, 17F

03/18 14:11, 4周前 , 18F
然後可以用不同公式計算再對答案
03/18 14:11, 18F

03/19 23:43, 3周前 , 19F
其實我很怕在BBS上使用數學式子...可能需要在其他媒體使用吧?
03/19 23:43, 19F

03/19 23:48, 3周前 , 20F
您說的是好方法 我想的是π在其他電腦上有執行過 可不可以引
03/19 23:48, 20F

03/19 23:49, 3周前 , 21F
用別人的數據?但要怎麼引用是個大問題 Orz
03/19 23:49, 21F

03/19 23:51, 3周前 , 22F
然後比較看一不一樣
03/19 23:51, 22F

03/20 04:04, 3周前 , 23F
我顧慮的是:公式不一樣,收斂速度不會一樣,精確度無法比較
03/20 04:04, 23F

03/20 11:15, 3周前 , 24F
為什麼要在 BBS 上寫數學式子…
03/20 11:15, 24F

03/20 21:52, 3周前 , 25F
我知道的不多
03/20 21:52, 25F

03/20 23:14, 3周前 , 26F
不不不,要寫數學式子有很多好工具,BBS 肯定不是其中一
03/20 23:14, 26F

03/20 23:14, 3周前 , 27F
03/20 23:14, 27F

04/06 10:44, 1周前 , 28F
@if4: 如 arctan 之類公式算好收斂速度後就能比精度的吧
04/06 10:44, 28F

04/06 10:45, 1周前 , 29F
至於 BBP 之類的公式, 特點就在於符合十六進位, 不僅是
04/06 10:45, 29F

04/06 10:45, 1周前 , 30F
收斂快, 更在於計算某個位數時不用計算前面的位數,
04/06 10:45, 30F

04/06 10:45, 1周前 , 31F
很適合拿來檢驗答案
04/06 10:45, 31F
文章代碼(AID): #1dr7sGxd (C_and_CPP)
文章代碼(AID): #1dr7sGxd (C_and_CPP)