理科生穿越回古代就是一悲劇 ——魏晉南北朝的理科成就

一

我們學過數學都知道,π叫作「圓周率」,指的是圓的周長與直徑的比值,是計算圓的面積與周長必不可少的引數。早年,世界各族人民對π的認識都很粗淺,一般只把π取為3。

要計算出這個結果很容易:只要製作一個儘可能圓的輪子(可以用類似圓規的辦法,固定一段繩子,把繩子拉直,繞頂點旋轉一週來畫圓),測量輪子在地面上走過一週的長度,再和輪子的半徑(也就是剛才畫圓用的那段繩子)一比,再除以2,就是π的值了。古巴比倫人和古埃及人早在我國夏朝的時候,就已經把π估算到小數點後一位了。

這種用實驗求π的計算方式雖然方便,但很不嚴謹,被戲稱為數學題中的「暴力計演算法」。類似的事很多數學家都幹過。據說有一次伽利略想要證明一個由曲線圍成的圖形,面積是另一個圓的3倍。這個問題要準確計算,必須用到微積分,但是伽利略的時代還沒有發明微積分。結果伽利略的證明方式是:在金屬板上切出題中的曲面圖形和圓形來,然後用秤稱了一下,前者的重量正好是後者的3倍。

其實π的暴力計演算法不止一個,再介紹兩個更兇殘的:

第一個叫「蒙特卡洛法」。在平面上畫一個圓,再畫一個外切正方形。朝這個圖形扔針(扔別的東西也可以,只要有尖就行),扔的次數越多越好。用針尖落到圓形裡的次數,除以針尖落到正方形裡的次數,再乘以4,這個數字便是π的近似值。

第二個叫「蒲豐投針法」。取儘可能多的等長度的針堆成一堆,在平面上畫上很多間距等於二倍針長的平行線。把那堆針隨手扔到平行線上,用總針數除以和平行線相交的針數,結果就是π的近似值。(嚴謹地說,平行線應該畫得足夠多,不能把針撒到離平行線太遠的地方去。)

這兩種方法的原理其實很簡單。前者的原理是,題中圓和正方形的面積比正好是π/4。後者針和平行線相交的機率正好是1/π。第一題很好計算,第二題雖然超出初中生的知識範圍,但是稍微用點功夫還是可以求出來的。

暴力計演算法雖然巧妙,但只能估算出大概值,並不是準確的數學計算,這是數學家不能容忍的。

用嚴謹的數學方法計算出π才算真本事。在人類歷史上,有據可查的最早用數學方法計算π的人是古希臘的阿基米德,時間上相當於在我們的秦朝時期。

中國最早計算π的是製造地動儀的張衡,他把π算為3.1622,相當於把π精確到小數點後一位(從第二位開始他就算錯了,所以後面的位數就不算數了)。

張衡之後,中國還有很多數學家都嘗試計算過π,以《九章算術》的作者劉徽最為有名,他把π算到小數點後第四位。

我們這一章介紹的祖沖之是南北朝時的南朝人,他更厲害,他把π計算到了小數點後第七位。因為他的數學著作《綴術》今天已經看不到了,我們只能推測祖沖之計算π的方法是「割圓術」,這是因為祖沖之之前的劉徽提出了「割圓術」的方法。從常理上推斷,祖沖之當時只有「割圓術」這一個方法可以使用。

祖沖之計算出來的π值遙遙領先於世界其他數學家,他的記錄直到15世紀(在我國明朝時期)才被阿拉伯數學家打破。這在中國數學史上是一件非常了不起的事。

但非常遺憾的是,中國傳統重視文科,輕視理科。祖沖之做出如此了不起的成績,卻得不到社會的重視。大約到了元朝以後,祖沖之計算的π值已經被中國人遺忘了。後來的中國人使用的仍舊是張衡時代3.1622的粗略值。到了清朝康熙年間,中國人還要向西方傳教士學習圓周率的知識。