第二章 分數
分數的產生
在經過第一站的長途跋涉后,我們準備進入數的旅程第二站。在第一站,我們欣賞了自然數的風光,在這站我們將去欣賞一下分數的景色。
歷史上,分數的出現是很早的。它的出現也是很自然的,作為自然數概念最早的推廣,在人們學會記數與自然數的運算后不久就知道分數了。但對于不同的民族,分數產生的途徑卻并不相同。下面讓我們去看一下歷史上幾種關于分數的不同的處理方式。
先來看看古埃及吧。
古埃及很早就有了分數的概念。不過,令現代人感到奇怪的是,古埃及人使用的分數僅是單分子分數,即分子為1的分數。當然,從某種角度上講,單分子分數的產生是很自然的。想想當有許多人比如說10個人吧,平分一種食物時,每人就分得1/10。這種平分物品,每人取得一份的情況在當時大概是非常常見的吧。于是,由此引出單分子分數是自然的。不過,真正令人奇怪的是,除了個別的分數如2/3,埃及人引入特殊的符號表示外,對于其他的不是單分數的分數他們都要把它化作不同的單分子分數之和。如2/5記為3 15,意思是2/5=1/3+1/15。古埃及人為什么會用這種麻煩的方法呢?這種做法有沒有什么實用的目的呢?這些都是令數學史家困惑的,也是值得進一步探討的問題。當然,對此有一些猜測,但至今仍無定論。
比如,有人提到,這種方法用于解決食物分配和土地分配問題的時候,可以取得有益的結果。
例如有一個題:把7個面包分給8個人。每人應分得多少呢?我們的解答很簡單,就是7/8。而古埃及人的解答形式為7/8=1/2+1/4+1/8。如果只是想知道每人獲取多少,兩種解答并看不出優劣。不過,在當時人們可能更經常面對的是實際的操作問題,即:應該如何分呢?
按我們通常所熟知的辦法,為了每人獲取7/8,可以把一個面包切七次,切成八塊,每人取一塊,如此進行七次就成了。但這樣共需要切7×7=49次。
再來看看從古埃及人復雜的解答中我們可以獲得什么更簡單的分法吧。通過式子我們可以如下操作:取其中的4個面包每個切成兩份,每人取一份,這樣每人獲取1/2個面包;取其中的2個面包每個切成四份,每人取一份,這樣每人又獲取1/4個面包;最后剩下的一個面包切成8份,每人取一份,這樣每人又獲取1/8個面包。于是,每人最終獲取的面包數是1/2+1/4+1/8=7/8。然而如此操作時,卻只切了4×1+2×3+7=17次就成功地解決了問題!
在古代,這樣的問題恐怕是常常遇到的吧。尤其是當需要分的物品是獸肉之類難以分割的東西時,這種分法的優越性就更加明顯了。不過,如果僅是如此,使得古埃及人采用了單分子分數的話,他們的做法就是得不償失的了。因為,這樣一點好處,遠遠無法抵消掉如此做所帶來的缺陷。這主要表現在運算方面的煩瑣上,對此下面我們會做簡單介紹。
對古巴比倫,我們只想說明幾點。其一,前面我們已經提到,在公元前1800~公元前1600,古巴比倫人已采用六十進制表示自然數。同樣,他們的分數也是六十進制的。其二,他們在分數的表示上存在著與表示自然數同樣的困境。一個符號作為分數可能表示21/60也可以表示20/60+1/602。這就造成他們記數法上更大的混亂。其三,對少數幾個分數他們使用了特定記號,如1/2、1/3、2/3。這些特殊分數雖然是從量的度量中所得出的結果,但對古巴比倫人來說,在量的度量意義上是作為“整體”看待的,而不是一的幾分之幾。這正如我們把一角錢與一元錢對比時我們可以把一角錢看作1/10元,但又可以把一角錢本身看成是一個單位,作為一個整體對待是一樣的道理。
再來看看古希臘羅馬。
希臘人特別重視分數。從畢達哥拉斯學派那里,古希臘人相信自然界中的任何東西都可以用整數或整數的比表示。這種認識很可能來源于音樂。正如畢達哥拉斯本人發現的那樣,任何振動的弦產生的普通音程,都與弦長度的簡單數字比相對應。為了產生兩個相差八度的音,我們首先讓弦在它的全部長度上振動,然后在它的二分之一長度上振動;這樣,一個八度音就對應于比2∶1。類似地,五度音程對應于3∶2,四度音程對應于4∶3……而聽起來越動聽越和諧的音程,表示它的分數就越簡單。不和諧的音程其比更復雜,例如二度音程的比是9∶8,而半音的比是16∶15。由于音樂與數學的這種密切聯系,音樂理論在西方甚至被稱為分數的算術,成為當時數學的四大研究科目之一呢!此外,由于在希臘人的世界中,音樂與數學和哲學具有同等的重要性,所以希臘人在以上的事實中看到了一個跡象:整個宇宙都是根據來自分數的音樂諧聲規律構建的。也正是由此畢達哥拉斯學派得出了“宇宙和諧論”。在這里,我們需要指出一點,希臘人在早期是把分數表示為兩個整數的比。也就是說,分數在希臘來源于整數的比,而并非把分數看作數的整體。這種觀點一直到希臘后期才有所改變。那時,人們開始把分數當作數的整體來看待了。如阿基米得用單詞來表示分數,而且熟練地把比率轉化為分數或者向相反方向轉化。這個時期的天文學家使用了巴比倫六十進制的分數,并采用愛奧尼亞式的字母符號來記錄。這大概是因為六十進位制的分數在天文計算中比較方便的緣故。
羅馬人在計算時使用的是十二進位制分數。這是由于在實際計算中,經常遇到的分數是1除以2、3、4、6所得的結果。因此這些分數容易運用十二進位制分數予以表示。他們對2/12、3/12……11/12、1/24、1/36、1/48、1/96……都有專有的名稱和符號。并且每個名稱都有自己的來歷。例如,羅馬人把貨幣基本單位分成12等份,每一等份稱為“盎司”。這個名稱應用到分數上等于1/12阿斯。另外的分數,部分的可以從與盎司的比值中得到自己的名稱。例如5/12盎司就稱為五盎司。這正如我們的貨幣中1/10角相當于是一分;2/10角相當于二分等一樣。用這種辦法的一大好處是,在計算時利用這些名稱就化為名數計算,實際上是把應該使用分數的運算化為了自然數運算,因此大大簡化了計算。要知道,分數運算對于古代人來說是相當困難的。
最后讓我們轉回來,看看我們中國對分數的早期認識吧。
我國是世界上使用分數最早的民族之一。分數在中國起源于何時,有待于進一步詳考。不過,它的出現確實是很早的,甚至被認為可以上溯到文字出現的初期。在春秋時期的古書上已有了關于分數的記載。如春秋《左傳》中關于周天子封地給諸侯做了這樣的規定:“大都不過三國之一,中五之一,小九之一。”意思是,根據當時的制度,諸侯的都城不要過大,最大的不得超過周文王國都的三分之一,中等的不超過五分之一,小的不超過九分之一。再如戰國時期著作《考工記》中,常用分數表示手工業產品各部分尺寸的比。表示長度的單位有“十分之一謂之枚”的說法,意思是說一寸的十分之一叫做枚。這里的“枚”就是現在講的“分”。再如,秦始皇時期擬定一年的天數為“三百六十五,四分之一天”,即;一年的月數是“一十二,十九分之七月”,即
月,這就是十九年七閏的方法。與其他古民族類似,在我國先秦典籍中對特殊的分數如1/3、1/2、2/3等也都有特殊的名稱,分別稱為“少半”、“半”、“大(或太)半”。這些記載說明至遲在戰國時期,我國已經廣泛使用了分數。同時說明我國古人對分數的研究一直是和社會實踐緊密聯系在一起的。
事實上,在我國,分數概念也正是源于實際生活中對度量單位的細分。也就是說,我國分數是在物體數量的比較中產生的。正如后來的劉徽所說:“物之數量,不可悉全,必以分言之。”意思是,在確定了度、量、衡或其他數量單位之后,某一物品不一定是其單位度量的整數倍,這就產生了分數。實際上,不能正好得出一個整數的任何測量都會導致對分數的使用。而由于人們需要分配一個整體的量時,不一定恰好量盡的情況是大量存在的,于是分數就自然而然地被引入了。隨著分數的大量出現和使用促進了分數概念的發展,人們慢慢地從“幾分升幾”、“幾分寸幾”等度量單位中抽象出了一般的分數概念。
后來,中國古代還從除法運算的角度引入了分數概念。在《九章算術》一書中說:“實如法而一。不滿法者,以法命之。”我國古代數學密切聯系實際,所分的都是實在的東西,如各種谷物、絲綢之類,故被除數稱為“實”;而用之于分的數實際上是一個標準,故除數稱為“法”。所謂“命之”即“命分”。于是,上面的話可譯為:“被除數除以除數,如果不能除盡,便定義了一個分數。”
此外,在我國古代分數還與比率密切結合在一起。比和比例是人類很早便接觸到的數學概念,它們在日常生活中經常出現。如草藥成分的多少,物物交換中各種不同物品間的比率等等都是比和比例概念產生的基礎。事實上,比率關系是我國古代數學家所考慮的最基本的數學關系。《九章算術》中的各種演算程序都是依據比率關系構造出來的。劉徽也是通過比率的性質論證了分數的性質與四則運算。也就是說,分數算法是以比率為理論基礎建立的。事實上,比率論是貫穿《九章算術》算學理論體系的一條主線,是算法之“綱紀”。需要指明的一點是,在當時比率是具有高度概括力的,比率論是以量與量間的關系為研究對象,其量是可以按照一定規律變化的,因而中國古代這種比率理論與現代比例算法并不相同。
這一切都說明我國古代對分數概念的認識具有多重性:分數作為測量或運算的結果,它是一個獨立的數;而在籌算的推演過程中,它實質上是被看作法與實一對(整)數的比率。李約瑟早就注意到了這一點。他說:“在《九章算術》中,分子和分母在運算前稱作子和母,在運算中則稱作實和法。”
在大致了解了古代各民族對分數的使用情況后,我們可以發現雖然各民族都很早引入了分數概念,但是引入的方式并不相同。概括一下的話,分數的來源大致有三條途徑:
1.實踐中度量細分的結果。
2.整數的比和比例。早期古希臘人甚至認為分數不是獨立的數,而只是“整數的比”。
3.整數的除法運算。
各民族對分數的處理方式上也有所不同。大致說來有這樣幾種情況:
1.單分子分數:這種古老的分數形式在各民族歷史的最初階段都引入了,但后來大多民族都轉向了更廣泛的分數概念,只有古埃及人對其情有獨鐘。
2.系統分數:在科學上使用得特別多的一類分數,也被稱為天文學分數或物理學分數。古巴比倫人最早引入了六十進制的分數。后來古希臘人在天文學中繼續使用了這種分數。或許是這類分數在天文學中使用比較方便的緣故,至今仍在科學中廣泛使用。小數亦可看作系統分數的一種。
3.普通分數:我們現在所通常使用的分數。
可見,在不同民族的歷史上,最初分數概念的來源與處理方式并不相同。其實,不同民族在對分數的記法上也是互不相同的。現代我們所使用的分數表示方法是經過了長期的演變過程才形成的。下面,我們就簡單介紹一下分數記法的演變過程。
分數的記法
古代人記分數的符號與方法是五花八門的。我們可以簡單介紹幾種。
古埃及人的分數有一套專用的記法。一般是用一個卵形寫在整數上端,表明這是一個分數。少數幾個分數用特殊符號表示。到公元前1850年左右,埃及僧侶阿姆斯所寫的算學文獻中,在自然數上面加上一點,來表示分數。另外,古埃及人把普通分數化成單分子分數表示的時候,把分數并排在一起來表示加法。如7/8表示成1/21/41/8中間不用加號。這種寫法在現在算術中還保留著一部分,如寫帶分數時,把整數和分數并排地寫當作兩數之和,不加任何聯接符號。
在古希臘愛奧尼亞記數法中,當分子是單位1時,問題簡單一些,因為可以不必表示分子而只是在普通數字右上角加兩撇表示分母就可以了。如在愛奧尼亞記數法中γ表示普通數字3,那么γ″就表示了分數1/3;當而分子不是單位1時,則在普通數字右上角加一撇表示分子,而在普通數字右上角加兩撇表示分母。如愛奧尼亞記數法中ιε表示普通數字15,那么用γ′ιε″就表示了分數3/15。
在我國,分數記法有兩種,一種是漢字記法:“幾分之幾”。另一種是籌算記法。我們在第一章中已經提到我國古代運算都是借助于籌進行的。當用算籌做除法時,如果出現除數大于某次余數,就停止運算。這樣余數、除數很自然地成為商的真分數部分與整數部分,二者合在一起所形成的帶分數就是商。正如《孫子算經》卷上所說:“實有余者,以法命之,以法為母,實余為子。”籌算除法的結果“商在上面,余數在中間,除數在下面,這正是我國古代帶分數的記法。根據《孫子算經》推測,古代真分數的記法應記成二行,分母在下,分子在上。假分數則記成三行。第一行是整數部分。如下(當然我們是采用了現代的數字記法)
6
3
5
則表示了分數。這種記分數的方法在我國大約公元3世紀就使用了。古印度人分數的寫法與中國古代算籌分數記法一樣,分子在上,分母在下,沒有分數線;若是帶分數,則整數部分又寫在分子之上。不過,籌算中分數的記法并不固定這一種形式。其母與子作為比率,它們的相對位置或上下,或左右,隨宜而定。
大約在12世紀,一個叫海塞爾的阿拉伯人最早引入了分數線。現在通用的分數線就是從阿拉伯人開始沿用下來的。在歐洲最早引入分數線的是斐波那契。15世紀以后,歐洲逐漸形成現代分數算法,并漸漸采用了現在的分數形式。1845年,德·摩根在一篇文章中提出用斜線“/”表示分數線,以利于印刷排版。這樣分數又可記為a/b。你或許早已注意到這本書中表示分數時對這兩種記法就是混合使用的。
分數的運算
正如前面曾指出的,分數概念的引入是非常必要的。分數的引入,是數系的第一次大擴展,它使人們能夠更精確地描述客觀事物的數量關系。正如我國劉徽所指出的,數量關系不可能只用整數表示,有時也要用分數來表示。
數擴展到分數后,由于實際需要又產生了分數四則運算規則,這是非常自然的。如同有了自然數后,就相應的有自然數的四則運算一樣。另一方面,分數四則運算還有其他的重要性質。分數四則運算本身不僅可以直接解決許多實際問題,而且,其他許多運算要歸結到分數運算,是其他數學方法不可少的工具。劉徽說:“法實相推,動有參差,故為術者先治諸分。”這正是我國第一部重要數學著作《九章算術》在第一章中先講分數的原因。
我國作為世界上最早建立分數四則運算的國家,在戰國時期就已經進行過分數四則運算。在秦漢時期便已成熟。成書于大約公元前1世紀的《周髀算經》中已經能夠在解決實際問題時熟練地進行分數運算了。事實上,書中的某些內容充分顯示了我國在分數計算方面已經達到很高的水平,遠遠地超出當時世界上其他各國。
到西漢初成書的《九章算術》更是集其大成,在世界數學史上第一次建立了完整的分數理論。
《九章算術》中明確提出了分數的基本性質:分子、分母同乘以或同除以一不為零的數,其值不變。劉徽在注中將這一基本性質概括為分數的兩條變形規則:“乘以散之;約以聚之。”他在注中說:“分數,如果講得復雜會給運算帶來麻煩,例如四分之二,說法不同,可以說是八分之四;簡單一些,也可以說是二分之一。說法不同,數值卻是不變的。”有了對分數性質的這一正確認識,就可以建立分數的通分、約分運算了。
對通分,劉徽提到其必要性,因為分數經過通分才能進行加減法運算。通分的方法被劉徽概之以“齊同以通之”,齊同術最初就是通分的方法。劉徽指出,通分的理論依據在于分數的變形規則“乘以散之”。通分運算包括兩步,一是使諸分數的分母同一,通過群母相乘得到,稱為“同”;二是使各分數保持不變,通過母互乘子而得,稱為“齊”。“同”是為分數相通;齊是保證“勢不可失本數”。可見,劉徽的齊同術與與我們所學的通分方法基本一致。不過,也多少有一點不同處。現在我們在通分時一般要求取原分母的最小公倍數作公分母。但在《九章算術》中所出現的通分問題,一般是采取分母互乘的方法。后來的《張邱建算經》一書,先是在序文說:“學算者不患乘除之難,而患通分之為難”。接著提出的通分方法也是直接取了兩分母的乘積,沒有取兩者的最小公倍數。古代人之所以這樣做,大約是因為求最小公倍數并不那么簡單,而直接取分母的乘積反而更易行些。也就是說,取最小公倍數的方法在理論上是重要的,但在運算中卻不一定實用。
約分術是《九章算術》的重要算法。書中提到約分術時說,分子、分母分別是二的倍數時,就相應用二或五去化簡。否則就用等數約之。而等數就是指我們現在所說的最大公約數。我國古代求最大公約數的方法叫做更相減損術,它與有世界聲謄的歐幾里得算法是一致的。
約分、通分正如我們已經知道的那樣,是進行分數四則運算的基礎。有了約分、通分的辦法,分數的四則運算就是水到渠成的事情了。我國在《九章算術》成書時代對分數四則運算已極為熟練,其分數加、減、乘、除運算規則分別稱為合分術、減分術、乘分術、經分術,其運算方法與現在我們所學習的完全一致。我們對此不再多說了。需要稍微提一下的是,古代人由于當時對負數還缺乏認識——對這一點,在后來的章節中我們會進一步說明——所以對兩個分數做減法時,要求前者大于后者才能進行運算。當然這要比較兩個分數的大小,對此我國古代還提出了課分術,即比較分數大小的方法,它與減分術基本相同。
對于我國古代在分數運算方面所取得的成就,我們往往會低估。因為在今天,當我們上小學四、五年級時已經學會做分數四則運算了。不過,當了解到古代其他民族,邁出這一步所經歷的漫長與曲折歷程時,你可能會對我國所取得的成就感到幾分自豪了。
分數算術在古埃及數學中占有特別重要的地位。關于埃及分數較完整的一份資料至今仍保存在大英博物館里。通過這份成文于約公元前1700年的“萊特草紙”,我們可以清楚了解到古埃及人處理分數的方式。正如我們已提到的,古埃及人總是喜歡把所有分數化為單分子分數的和,那么他們是如何實現這一點的呢?在這份草紙上的一張表上,記錄著分子為2,分母為3、5、7、9………101的分數分解成單位分數之和的形式,只有2/3除外,沒有做這種分解。古埃及人建立的這張特殊的表,向后人清楚表明了他們正是利用這樣的表,將其他任何分數化為單分子分數,并進行相應的分數運算的。例如使用這種表有:
5/21=1/21+2/21+2/21=1/21+1/14+1/42+1/14+1/42=1/21+2/14+2/42=1/21+1/7+1/21=1/7+2/21=1/7+1/14+1/42
運算是何等復雜!而且這種運算不單單是冗長的問題,它還要求有相當的技巧。可見即使是有了這樣的表,進行分數運算時也是非常困難的。正是從運算的角度,我們才能更清楚地明白古埃及人只用單分子分數所帶來的好處遠遠無法抵消掉它帶來的不足。事實上,埃及人處理分數的這種方式給他們的數學造成了一種沉悶的性質,妨礙了其數學的進一步發展。它像羅馬計數法一樣,嚴重地遲滯了古埃及人數學的進步。后人推測,他們之所以未能把算術和代數發展到高水平,其分數運算之繁難恐怕是原因之一。
除了古埃及外,在古代許多其他民族,分數運算也都是令人深感頭痛的事。公元7世紀,俄國亞美尼亞地方著名數學家阿那尼在他的《算術習題課本》中,給出八個分數相加的習題,就被人們認為他的知識達到最高水平。當時歐洲最有學問的英國修士倍達說:“世界上有很多難做的事,但是,沒有比算術四則再難的了。”歐洲到15、16世紀還感到困惑。例如意大利學者帕西沃里對分數相乘有時乘積會小于被乘數覺得大惑不解。而英國人唐士陶取材帕西沃里《算學大成》,用拉丁文編成的算術,還是當時牛津、劍橋大學的教科書呢。直到1570年英國還有人作打油詩表達對數學運算的厭惡:
“乘法原可惱,
除法尤不便;
比例之法更艱澀,
習之真使人發狂。”
到16、17世紀,歐洲人才總結出類似于我國《九章算術》的分數四則運算法則以及有關的文字題。甚至直到18世紀,歐洲人對分數運算仍心有余悸。1735年,英國一本算術教科書的作者曾講了這樣一段話:“為了照顧學生們……我們把通常稱為分數的破碎數的運算規則單獨敘述,部分學生在看到這些分數時,灰心到就此停止學習,他們嚷聲說:‘不要再往下了!'”可見歷史上人們對分數運算厭煩、畏懼到何等程度。那時精通四則運算就可算作學者了,至于分數,簡直難于上青天!德國諺語形容一個人已陷入絕境,束手待斃,就說他已“掉到分數里去”。
這并不奇怪,今天我們課堂上一、二個小時或幾分鐘就可掌握的知識,在科學史上往往要花費幾年、幾十年,甚至上百、上千年的時間。前面已經提到過的位值制與零的引入,不也是很好的例證嗎?