运筹帷幄——我国古代的高超算术
? 歡迎來到神奇的01世界 ?
說到算籌,想必很少有人聽聞。雖然史上國外(日本、印度、巴基斯坦等)也有過這塊腰椎間盤,但還是要數(shù)中國的最突出。
圖片來自網(wǎng)絡(luò)先感性認(rèn)識(shí)一下
算籌最早出現(xiàn)于商周,在算盤被發(fā)明之前,堪稱世界上最先進(jìn)的計(jì)算工具。你可能沒聽說過,但「運(yùn)籌帷幄」、「觥籌交錯(cuò)」這些朗朗上口的成語皆出于此。而這所謂先進(jìn)的計(jì)算工具,竟是一根根小小的棍子(長約十幾厘米)。棍子的材料多樣,竹子、木頭、象牙、獸骨、金屬、玉器應(yīng)有盡有,凡能削成棍狀的東西皆可為之。當(dāng)然我們現(xiàn)今所能看到的算籌,多是耐腐蝕材質(zhì)的。
戰(zhàn)國骨籌(圖片來自http://www.cnr.cn/sxpd/jd/20170720/t20170720_523860563.shtml#3) 戰(zhàn)國銅籌(圖片來自http://bbs.chcoin.com/show-6865738.html?authorid=190510) 西漢鉛籌(圖片來自http://blog.sina.com.cn/s/blog_4551bbe8010105vv.html) 西漢牙籌(截圖來自《如果國寶會(huì)說話 第二季》第20集)像我們隨身攜帶手機(jī)一樣,懂?dāng)?shù)學(xué)的古人通常會(huì)隨身佩戴絲布制成的算袋,里頭放著一把算籌。走在路上碰到欠債不還的,一言不合就能掏出來跟他算賬……
圖片來自網(wǎng)絡(luò)傳說秦始皇也經(jīng)常佩帶絲質(zhì)的算袋。一次東游,他把算袋扔進(jìn)了海里,變化成烏賊,因此烏賊也有算袋魚之稱。
到了唐朝,更有法律規(guī)定文武百官必須佩帶算袋。可見在彼時(shí),算籌不單單是一種計(jì)算工具,更是文化和身份的象征。
算籌示數(shù)
史上第一本記述算籌的專著是一千五百年前的《孫子算經(jīng)》,作者不詳(跟孫武孫臏沒有半毛錢關(guān)系)。
算籌用紅棍表示正數(shù),黑棍表示負(fù)數(shù),有縱橫兩種「布棍」模式,縱式用豎棍表示1、橫棍表示5,橫式反之:
| 縱式 | |||||||||
| 橫式 |
| 縱式 | |||||||||
| 橫式 |
0比較特殊,用留空表示。
對(duì)于不同的數(shù)位,縱式、橫式是相間使用的,《孫子算經(jīng)》如是描述:
凡算之法,先識(shí)其位。一縱十橫,百立千僵,千十相望,萬百相當(dāng)。
個(gè)位上的數(shù)字用縱式,十位上的用橫式,百位上再用縱式,千位再用橫式,以此類推。這樣奇怪的做法是考慮到0的存在,比如2018:
| 橫式 | 縱式 | 橫式 | 縱式 |
畫了表格,才凸顯出0的空位。但在實(shí)際使用中,尤其在書寫(謄抄算法)時(shí),空位很容易被忽略,有了縱橫交錯(cuò)的做法,即使沒有空位,2和1挨在一起,也不會(huì)把2018當(dāng)成218。
當(dāng)然這也存在一個(gè)問題,比如20018就有被當(dāng)成218的可能。人們會(huì)在「布籌」的計(jì)算板上(counting board)劃好棋盤一樣的表格,或者用圍棋子來表示0,以避免這個(gè)問題。在書寫方面,則引入了圓圈符號(hào)——〇。即便如此,縱橫交錯(cuò)的形式還是作為經(jīng)典被始終沿用。
籌算
使用算籌的方法叫籌算,兩個(gè)字顛倒一下,好比牙刷的使用叫刷牙,不得不感慨中文的博大精深。由于人在閱讀時(shí)會(huì)無意識(shí)地忽略文字順序,所以下文所提「算籌」、「籌算」還請(qǐng)細(xì)細(xì)分清。
籌算的能力強(qiáng)大,除了最基本的加減乘除,還能進(jìn)行乘方和開方,納尼!乘方?開方?!是的,你沒有看錯(cuò),而且遠(yuǎn)不止這些,籌算甚至能解線性方程(組)、求最大公約數(shù)和最小公倍數(shù)、解同余式組、造高階查分表等等,其所用到的負(fù)數(shù)、小數(shù)、分?jǐn)?shù)等較為抽象的數(shù)字概念,比西方早出一百年甚至好幾百年。
公元480年左右,南北朝數(shù)學(xué)家祖沖之使用籌算將圓周率精確到小數(shù)點(diǎn)后7位(3.1415926~3.1415927之間),這一精度領(lǐng)先世界近千年,直到15世紀(jì)初才被打破。這一計(jì)算涉及包括開方在內(nèi)的130次運(yùn)算,放到今天,如果不用電子計(jì)算設(shè)備給你一沓草稿紙,恐怕也很難算準(zhǔn)。
除了圓周率,著名的秦九韶算法、剩余定理等高超的古代數(shù)學(xué)成就,都是靠籌算得到的。
其實(shí)算籌本身僅僅提供了一種用棍子表示數(shù)字的「書寫」形式,能做如此復(fù)雜的計(jì)算,得益于古人一代代智慧積累下來的算法口訣,包括沿用至今的九九乘法表。計(jì)算過程和現(xiàn)在的「列豎式」十分相似:
6561 ÷ 9(圖片來自維基「Sunzi Suanjing」詞條,請(qǐng)無視它為什么不是紅色……)也許你會(huì)覺得,籌算雖然強(qiáng)大,但小木棍的擺放好像并不方便。確實(shí)需要進(jìn)行許多機(jī)械式的重復(fù)步驟,但可謂孰能生巧,厲害的籌算者有著相當(dāng)可觀的計(jì)算速度,沈括在《夢溪筆談》中描述某壞男人淮南人:
運(yùn)籌如飛,人眼不能逐。
不知是否有夸張的成分,但參考現(xiàn)在嫻熟的算盤手,基本也能想象其景。
算籌的不足
籌算雖然強(qiáng)大,然而作為一種質(zhì)樸的計(jì)算工具,終有捉襟見肘的時(shí)候。同現(xiàn)今計(jì)算機(jī)軟硬件的相互促進(jìn)一樣,諸多算法為適應(yīng)籌算模式而生,而算籌本身卻漸漸對(duì)復(fù)雜的算法力不從心——譬如重因法、身外加減法、求一法,聽都沒聽說過,靠一堆小棍棍已經(jīng)難以應(yīng)對(duì)。加之,籌算時(shí)所用算籌數(shù)量龐大,表示單個(gè)數(shù)就可能用到5根,數(shù)字越多越繁亂,三國時(shí)期魏國人管輅的《管氏地理指蒙》一書甚至以籌喻亂:
形如投算,憂愁紊亂。
而且起初的算籌長約14厘米,擺個(gè)6就要占200平方厘米,可以想象,做稍微復(fù)雜一點(diǎn)的運(yùn)算時(shí)得放多大一塊面積。即使到宋元間改良至1~3寸(3~10cm),面對(duì)大計(jì)算量的問題依然不好使。宋代馬永卿《懶真子》一書就有言:
卜者出算子約百余,布地上,幾長丈余。
解道數(shù)學(xué)題要鋪滿整個(gè)客廳,還得滿地爬,不僅是腦力活,更是體力活,搞不好還容易閃著腰啊……
算籌,終被算盤取代。
蘇州碼子
蘇州碼子,也叫草碼,花碼、菁仔碼、番仔碼、商碼,是我國在阿拉伯?dāng)?shù)字傳來之前廣泛使用的一種數(shù)字形式,是唯一一種現(xiàn)存的書面算籌變種,在港澳街市、舊式餐廳、中藥房仍有一點(diǎn)碰到的小概率。
| 〡 | 〢 | 〣 | 〤 | 〥 | 〦 | 〧 | 〨 | 〩 |
你們見過嗎?我是可惜沒有見過。
有了這條冷知識(shí),以后出門一定得好好留意,指不定走進(jìn)哪家餐館,看到的價(jià)目表是醬紫的:
圖片來自維基「Suzhou numerals」詞條正當(dāng)小伙伴們眾臉懵逼之時(shí),你一頓瀟灑解讀,甭提多有面子!
參考文獻(xiàn)
- 孫燕群. 計(jì)算機(jī)史話[M]. 青島: 中國海洋大學(xué)出版社, 2003.
- N.A.阿波京, JI.E.梅斯特洛夫. 計(jì)算機(jī)發(fā)展史[M]. 上海: 上海科學(xué)技術(shù)出版社, 1984.
- 劉博. 計(jì)算工具發(fā)展研究[D]. 遼寧師范大學(xué), 2015.
- 吳為平, 嚴(yán)萬宗. 從算盤到電腦[M]. 長沙: 湖南教育出版社, 1986.
- 中央廣播電視總臺(tái), 國家文物局. 如果國寶會(huì)說話 第二季[EB/OL].
- 陳厚云, 王行剛. 計(jì)算機(jī)發(fā)展簡史[M]. 北京: 科學(xué)出版社, 1985.
- Wikipedia. Counting rods[EB/OL].
- 佚名. 孫子算經(jīng)[M].
- 逸之. 01改變世界:沒有計(jì)算器的日子怎么過——手動(dòng)時(shí)期的計(jì)算工具[EB/OL].
- Wikipedia. Sunzi Suanjing[EB/OL].
- Wikipedia. Suzhou numerals[EB/OL].
- 百度百科. 蘇州碼子[EB/OL].
總結(jié)
以上是生活随笔為你收集整理的运筹帷幄——我国古代的高超算术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iPad自带邮箱添加网易企业邮箱
- 下一篇: PBX