受小時候看《上下五千年》插圖的誤導,我一直以為祖沖之是用“尺規作圖”的方法畫了一個很大很大的圓,然後趴在地上一點一點地“割圓”,然後一段一段地測量直線的長度,把它們加起來得到圓周的近似長度,然後除以大圓的直徑,得到π的近似值。
後來我意識到祖衝之得到的圓周率太精確了,355/113=3.14159292……,不可能真的是“物理地”測量出來的。
祖衝之密率的精度高達:
為了得到這個數,祖沖之把圓分成了12288等分。假如祖衝之真的是一段一段測量這個12288多邊形的話,意味著祖衝之測量了12288次,每次測量都不可避免有誤差,人眼的最小分辨率是大約δ=0.1mm。這意味著祖沖之的周長L需要把N=12288次獨立測量的長度加起來,這個誤差是:
圓周率等於圓周長L除以圓直徑D,假設圓直徑的測量沒有任何誤差,實測圓周率的誤差是:
這意味著祖沖之要畫一個很大很大的圓:
至少直徑30公里的圓,這是不可能的。所以祖沖之一定是用數學方法計算的。
步驟如下:
12288可以被6整除,假設我們由一個正六邊形出發。即做一個半徑r為1的圓,然後再做這個圓的內接正六邊形。
從圓心O出發向六邊形的一條邊AB做垂線OP,P是這個垂線與圓的交點,Q是OP與AB的交點。假設OQ=h,QP=b;
考慮直角三角形OAQ,假設AB=l(這裡l=1),AQ=l/2;我們現在可以求出h和b,
我們可以求出AP,假設為l",
對正六邊形來說r=1,l=1,由此可計算出h,b,l"。
這個過程可以一直進行下去,比如我們現在考慮正12邊形,
現在r,l是已知的,我們可以用跟以上完全相同的公式推出新的l"。
我們多做幾次,就可得到一個正12288邊形。現在得到的l是有數學公式的,所涉及的計算只有開方,只要祖衝之會精確地算開方,他就能計算出正12288邊形的邊長,然後可算出精確的圓周率π=Nl/2。
我們可以編個程序來完成此項工作:
計算的結果是:π=3.14159261937,精度高達10的8次方之一。當然祖沖之為了幫助大家記住這個數,用一個分數355/113來表示(這個分數是通過“調日法”得到的),這實際上還讓精度降低了一些。
不得不說,在沒有計算機的年代,祖衝之能不怕繁瑣,把這個數搞出來還是很令人欽佩的。
受小時候看《上下五千年》插圖的誤導,我一直以為祖沖之是用“尺規作圖”的方法畫了一個很大很大的圓,然後趴在地上一點一點地“割圓”,然後一段一段地測量直線的長度,把它們加起來得到圓周的近似長度,然後除以大圓的直徑,得到π的近似值。
後來我意識到祖衝之得到的圓周率太精確了,355/113=3.14159292……,不可能真的是“物理地”測量出來的。
祖衝之密率的精度高達:
為了得到這個數,祖沖之把圓分成了12288等分。假如祖衝之真的是一段一段測量這個12288多邊形的話,意味著祖衝之測量了12288次,每次測量都不可避免有誤差,人眼的最小分辨率是大約δ=0.1mm。這意味著祖沖之的周長L需要把N=12288次獨立測量的長度加起來,這個誤差是:
圓周率等於圓周長L除以圓直徑D,假設圓直徑的測量沒有任何誤差,實測圓周率的誤差是:
這意味著祖沖之要畫一個很大很大的圓:
至少直徑30公里的圓,這是不可能的。所以祖沖之一定是用數學方法計算的。
步驟如下:
12288可以被6整除,假設我們由一個正六邊形出發。即做一個半徑r為1的圓,然後再做這個圓的內接正六邊形。
從圓心O出發向六邊形的一條邊AB做垂線OP,P是這個垂線與圓的交點,Q是OP與AB的交點。假設OQ=h,QP=b;
考慮直角三角形OAQ,假設AB=l(這裡l=1),AQ=l/2;我們現在可以求出h和b,
我們可以求出AP,假設為l",
對正六邊形來說r=1,l=1,由此可計算出h,b,l"。
這個過程可以一直進行下去,比如我們現在考慮正12邊形,
現在r,l是已知的,我們可以用跟以上完全相同的公式推出新的l"。
我們多做幾次,就可得到一個正12288邊形。現在得到的l是有數學公式的,所涉及的計算只有開方,只要祖衝之會精確地算開方,他就能計算出正12288邊形的邊長,然後可算出精確的圓周率π=Nl/2。
我們可以編個程序來完成此項工作:
計算的結果是:π=3.14159261937,精度高達10的8次方之一。當然祖沖之為了幫助大家記住這個數,用一個分數355/113來表示(這個分數是通過“調日法”得到的),這實際上還讓精度降低了一些。
不得不說,在沒有計算機的年代,祖衝之能不怕繁瑣,把這個數搞出來還是很令人欽佩的。