作者tropical72 (藍影)
看板C_and_CPP
標題Re: [問題] 有人知道這pi公式的名字嗎?
時間Sat Dec 4 05:13:08 2010
: 這公式很棒啊,沒有正負交替。
: 極適合平行計算。
: 收殮又快,做一千項就有小數點七位精度
: Leibniz formula做一千項才到小數點後第三位 0.0
: (或是說Leibniz要作一千兩百萬才只有他一千次的精度)
: 有人知道這公式的名字/來源或推導的嗎?
: 謝謝
看到這個不禁想到目前史上最強的 pi... 三行算千位
這程序是對岸寫的
#include <stdio.h>
int main()
{
long a=10000,b=0,c=2800,d=0,e=0,f[2801],g=0;
for(;b-c;) f[b++]=a/5;
for(;d=0,g=c*2;c-=14,printf("%.4d",e+d/a),e=d%a)
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
return 0;
}
到現在還是完全看不懂它是怎麼算的.
不過我知道它是用 J.Marchin 原理下去跑的,
網路上有人示範 excel 怎麼拉 1000 位的 pi,
和這份原始碼跑的方式很像..
http://www.esproc.com/exercises/pi1000.html
不禁又要長嘆, 對岸強者怎麼這麼多..
--
YouLoveMe() ? LetItBe() : LetMeFree();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.76.142
※ 編輯: tropical72 來自: 180.177.76.142 (12/04 05:23)
→ tropical72:收回,那好像不是excel,是叫"集算器"的(軟體嗎).. 12/04 05:28
→ curist:不懂這哪裡強,上一篇用到的式子簡潔易讀,這都塞到for裡.. 12/04 08:39
→ curist:啊不要誤會,演算法很強,大數很熟很強,是三行不強..@@ 12/04 08:56
→ x000032001:惡搞素材發現( ′_>`) initial寫個b-c.. 12/04 09:01
推 latinboy: 不是匪區寫的 很早就出現在國外討論區 12/04 11:43
→ xatier:'程序' 不也是大陸用詞 XD 12/04 12:42
推 purpose:台灣比較沒有分享的風氣,未必是強者比較少 12/04 13:41
→ king19880326:短碼難讀又不見得快, 我想強者應該俱備的是大型軟體 12/04 14:49
→ king19880326:開發能力而不是短碼能力 12/04 14:50
→ mabus:「外星人計算π的程序」網路上好像是叫做這個...。 12/04 16:00