国际奥数包揽金牌:中国人的数学,为何这么厉害?
《史记·留侯列传》中,记载了郦食其劝说刘邦封立六国、张良分析理由并加以阻止的场景,当刘邦兴致勃勃对张良讲述郦食其的观点时,张良答道:“臣请藉前箸为大王筹之。”随即用筷子充当算筹,为刘邦一一数出利弊,这一幕被称为“运筹借箸”。“运筹”原本指用算筹计算,衍生出经略谋划之意,“运筹帷幄之中,决胜千里之外”,就是刘邦后来对张良的评价。现代应用数学学科中的Operations Research引入中国时,也被译为“运筹学”。
在我国古代,数学通常被称为“算学”。算筹——形如筷子的小棍,是先人使用数千年的“计算器”,其运用法则蕴含着中国古代数学中基本的位值思想、表达形式和计算方法,影响不可谓不深远。尽管随着时间推移,算筹在元代以后逐渐淡出,但在它基础上衍生出的算盘和“苏州码”沿用至近现代。
算筹:演天地之数
算筹又名算子、筹策,它究竟在何时出现已不可考。《易经》记载:“上古结绳而治。”可以看作一种最原始的记录事件兼计数方式,其他古文明中亦有应用。在此基础上,先民逐渐研制出更便于使用的计算工具。
南美洲印加人曾用于记事的“奇普”(Quipu),是将多根打结的绳子系在同一根横向绳索的下方,不同形状的绳结可以代表不同数字,也可以用来计算总数,不同颜色则代表时间、物品等复杂信息。
《史记·历书》记载:“黄帝使羲和占日,常仪占月,臾区占星气,伶伦造律吕,大桡作甲子,隶首作算数,容成综此六术而著调历。”虽然隶首为上古传说中的人物,但也可一窥“算数”历史之悠久,并且是为满足人民的实用需求而诞生的。
晋代人整理的《逸周书》中有“卑辞而不听,□财而无枝”之语,有研究者认为,“枝”指的是周代使用的算筹雏形。早期的算筹可能是使用取材方便的竹棒、树枝随意为之,“算”“筹”“策”等字都体现出它的质地。用来盛算筹的容器,叫做“中”,《周礼》中记载“凡射事,饰中,舍算”,后世有注“中,所以盛算也”,它很可能也是竹子制成的筒状容器。
在春秋时期,算筹的使用已经相当普遍,《论语》中有“斗筲之人,何足算也”,《老子》也提到“善计者不用筹策”。1954年,在湖南左家公山的楚国墓葬里出土了40根竹算筹,是目前已知最早的算筹实物。在《汉书·律历志》中,明确了它的制作规范:“其算,法用竹,径一分,长六寸,二百七十一枚而成六觚,为一握。”换算成今天常用的单位,就是直径约0.23厘米、长约13.8厘米的直棒,一套共271根,叫做“一握”,可以放在一个六边形的容器里。
古人常用的算筹除了竹制,亦有金属制、骨制、玉石制。横截面不仅有圆形,也有不易滚动的长方形。《晋书·王戎传》中,用“每自执牙筹,昼夜算计”描述王戎“积实聚钱”的勤奋程度。宋代《邵氏闻见后录》描写了略为灵异的一幕:“盗夜发咸阳原上古墓,有火光出,用剑击之,铿然以坠,视之,白玉帘也。岂至宝久埋藏欲飞去邪?既击碎之,有中官取以作算筹。”古人用帘,需能随意舒卷,因此白玉帘可能不是整片的白玉,而是由多条磨细的玉棒连缀而成,正适合做算筹。
古人为了携带方便,通常将算筹放在一个布袋里,挂在腰带上,这个布袋亦名“算袋”。《旧唐书·舆服志》规定,“一品以下文官并带手巾算袋”。连海中的乌贼也因为外形略似有飘带的袋子,被古人认为“秦皇东游,弃算袋于海,化为此鱼”。
我国胶州湾以南的海域有一种珊瑚纲无脊椎动物沙箸海鳃(Virgularia sp.),因为躯干主体部位呈细长笔直的圆柱形,很像一根算筹,古人称之为“越王余算”,并创造了相关传说:“昔晋安越王渡南海,将黑角白骨作算筹,其有馀者,弃于水中而生此,故叶白者似骨,黑者似角。
纵横布筹,算无遗策
算筹应当如何表达数字和做计算?或许有人会联想起一个经典的笑话:老师教学生写字,讲“‘一’字画一横,‘二’字画两横,‘三’字画三横”,学生马上觉得自己都学会了。父亲让他给姓“万”的人写封信,他画了一天还没画完道道。
看上去像一根根小棍的算筹,要怎么表达数字呢?难道也像这个故事里的学生那样,表达数字“一”摆一根,数字“十”摆十根,数字“万”摆一万根吗?其实,古代的算筹记数依据是“位值制”记数法,即每个数字所表达的数值不仅取决于它本身,而取决于它在记数中所处的位置,这样就能够用较少的符号表达较大的数。算筹的位值制记数法建立在十进制基础上,即每满十数进位,相比于二十进制、六十进制,这种进位制的应用最广泛,我们今天使用的运算法则也是基于十进制的。
至迟在春秋时期,我国的十进位值制已经成熟。《墨子·经下》中提到:“一少于二,而多于五,说在建。”意思是,如果一和二都位于个位,一比二小;但如果一位于十位及以上,它代表的数字就比位于个位的五大。《左传·襄公三十年》记载,晋国绛县老人自称“臣生之岁,正月甲子朔,四百有四十五甲子矣,其季于今,三之一也”。意思是他出生以来经历了445个甲子日,最后一个甲子日是20天前。官吏询问大臣他应该有多少岁,师旷说:“73年。”史赵则给出了一个字谜:“亥有二首六身,下二如身,是其日数也。”答案也是73年。“亥”字的篆体上有二横,下面是三个“人”字,形同“六”字,如果把上面的“二”移到下方,就成了“二六六六零”,将天数折合为年就是73年。(如果是2666天,和现实不符)
约成书于公元3世纪前的《孙子算经》记载了基本的算筹记数法则:“凡算之法,先识其位。一纵十横,百立千僵,千十相望,万百相当。”
“一纵十横,百立千僵”直观地说明了算筹采用的纵式和横式两种记数方法,个位用纵式,十位用横式,百位再用纵式……这样相邻数位纵横交替摆放,避免数位太多时发生混淆。从1到5的数字可以直接摆放对数目的算筹,如果要用算筹表达从6到9的数字,则不需要摆和数字一样多的根数,而是先摆一根代表5,再在和它垂直交叉的方向放上1到4根,就可以分别代表从6到9的数字。算筹中没有表达“零”的字符,用空位代替0。《夏侯阳算经》概括为“满六已上,五在上方,六不积算,五不单张”。
算筹摆位的时候,高位在左,低位在右,和现代的阿拉伯数字相同。如果要摆数字“71824”,并不需要摆71824根,只需要在个位摆4根,十位摆2根,百位摆8根,千位摆1根,万位摆7根就可以。因此,现代认为,“算筹系统是世界上唯一只用一个符号的组合,表示任何十进位数字的系统”。
与之相比,其他古文明中的记数法则显得较为繁琐。比如,以古埃及的数字形式表达“3244”,需要写3个表达1000的文字、2个表达100的文字、4个表达10的文字和4个表达1的文字,并且外形各不相同。古希腊数字则是用不同的字母表达从1到9的数、10到90的十位数和从100到900的百位数,在书写数字时,将对应的字母写在一起,如写“241”就是将代表200的σ、代表40的μ和代表1的α三个字母并列。如果数字较大,则不利于计算和记录得数。
石刻上左栏中间表达数字为2,中下为2/3,底部为1/12;中栏中间表达数字为60,右栏顶部为1/30,中间为1/40。
用算筹做加法、减法,是按照从左到右的顺序,从高位到低位逐位相加、相减,随着加减的结果及时摆出对应位上的算筹,也可以直接在被加或被减的数字上操作,把每位数的结果摆成新的。乘除法也类似,以乘法为例,古人的做法是“上下相乘,实居中央”,先把乘数和被乘数按上下位置摆好,按从左到右的顺序用上面的数的第一位乘下面数的每一位,把乘得的积摆在上下两数中间,然后去掉上面的数的第一位,把下面的数往右移动一位;再用上面数的第二位乘下面数的每一位,把结果和中间的乘积相加……这样以此类推,直到计算完成。做除法是将被除数放中排,除数放下排,商数放上排,余数放在最下一排,刘徽《九章算术注》中定义,在上的筹称“实”,在下的筹称为“法”。
如果用算筹做涉及负数的计算,可以将算筹涂上不同的颜色,宋代使用红色的算筹表示正数、黑色的表示负数;如果使用同色算筹,就在数字最后一位斜放一根,以示区分。做小数计算的话,要将小数部分和整数部分区分开,南宋秦九韶采用的方式是在个位数下记单位名称,比如要计算天数,就在个位数下面标一“日”字。元代刘瑾则将小数部分整体下移一格。做分数计算时,和现代的分数表达形式一样上下摆放,《孙子算经》称在上的筹为“子”,在下的筹为“母”,这就是“分子”“分母”的由来。
算筹能够将每一步的计算结果清晰地表达出来,甚至连视力有障碍的人也能熟练运用它做计算,《梦溪笔谈》里记载了一位擅长算筹的盲人卫朴,“大乘除皆不下照位,运筹如飞,人眼不能逐。人有故移其一算者,朴自上至下手循一遍,至移算处,则检正而去”。体现出中国传统数学解决问题的“机械化”特点,即每一步骤都具有固定程序。除了四则运算,算筹还可以用来做开方、开立方,解高次方程、四元方程等,自先秦至宋代的诸多领先当时世界的数学成就,都离不开算筹的助力。作为我国古代数学的基石,它在推演历法、修建工程、计算人口和赋税等方面都发挥了重要作用。
《史记·留侯列传》中,记载了郦食其劝说刘邦封立六国、张良分析理由并加以阻止的场景,当刘邦兴致勃勃对张良讲述郦食其的观点时,张良答道:“臣请藉前箸为大王筹之。”随即用筷子充当算筹,为刘邦一一数出利弊,这一幕被称为“运筹借箸”。“运筹”原本指用算筹计算,衍生出经略谋划之意,“运筹帷幄之中,决胜千里之外”,就是刘邦后来对张良的评价。现代应用数学学科中的Operations Research引入中国时,也被译为“运筹学”。
在我国古代,数学通常被称为“算学”。算筹——形如筷子的小棍,是先人使用数千年的“计算器”,其运用法则蕴含着中国古代数学中基本的位值思想、表达形式和计算方法,影响不可谓不深远。尽管随着时间推移,算筹在元代以后逐渐淡出,但在它基础上衍生出的算盘和“苏州码”沿用至近现代。
算筹:演天地之数
算筹又名算子、筹策,它究竟在何时出现已不可考。《易经》记载:“上古结绳而治。”可以看作一种最原始的记录事件兼计数方式,其他古文明中亦有应用。在此基础上,先民逐渐研制出更便于使用的计算工具。
南美洲印加人曾用于记事的“奇普”(Quipu),是将多根打结的绳子系在同一根横向绳索的下方,不同形状的绳结可以代表不同数字,也可以用来计算总数,不同颜色则代表时间、物品等复杂信息。
《史记·历书》记载:“黄帝使羲和占日,常仪占月,臾区占星气,伶伦造律吕,大桡作甲子,隶首作算数,容成综此六术而著调历。”虽然隶首为上古传说中的人物,但也可一窥“算数”历史之悠久,并且是为满足人民的实用需求而诞生的。
晋代人整理的《逸周书》中有“卑辞而不听,□财而无枝”之语,有研究者认为,“枝”指的是周代使用的算筹雏形。早期的算筹可能是使用取材方便的竹棒、树枝随意为之,“算”“筹”“策”等字都体现出它的质地。用来盛算筹的容器,叫做“中”,《周礼》中记载“凡射事,饰中,舍算”,后世有注“中,所以盛算也”,它很可能也是竹子制成的筒状容器。
在春秋时期,算筹的使用已经相当普遍,《论语》中有“斗筲之人,何足算也”,《老子》也提到“善计者不用筹策”。1954年,在湖南左家公山的楚国墓葬里出土了40根竹算筹,是目前已知最早的算筹实物。在《汉书·律历志》中,明确了它的制作规范:“其算,法用竹,径一分,长六寸,二百七十一枚而成六觚,为一握。”换算成今天常用的单位,就是直径约0.23厘米、长约13.8厘米的直棒,一套共271根,叫做“一握”,可以放在一个六边形的容器里。
古人常用的算筹除了竹制,亦有金属制、骨制、玉石制。横截面不仅有圆形,也有不易滚动的长方形。《晋书·王戎传》中,用“每自执牙筹,昼夜算计”描述王戎“积实聚钱”的勤奋程度。宋代《邵氏闻见后录》描写了略为灵异的一幕:“盗夜发咸阳原上古墓,有火光出,用剑击之,铿然以坠,视之,白玉帘也。岂至宝久埋藏欲飞去邪?既击碎之,有中官取以作算筹。”古人用帘,需能随意舒卷,因此白玉帘可能不是整片的白玉,而是由多条磨细的玉棒连缀而成,正适合做算筹。
古人为了携带方便,通常将算筹放在一个布袋里,挂在腰带上,这个布袋亦名“算袋”。《旧唐书·舆服志》规定,“一品以下文官并带手巾算袋”。连海中的乌贼也因为外形略似有飘带的袋子,被古人认为“秦皇东游,弃算袋于海,化为此鱼”。
我国胶州湾以南的海域有一种珊瑚纲无脊椎动物沙箸海鳃(Virgularia sp.),因为躯干主体部位呈细长笔直的圆柱形,很像一根算筹,古人称之为“越王余算”,并创造了相关传说:“昔晋安越王渡南海,将黑角白骨作算筹,其有馀者,弃于水中而生此,故叶白者似骨,黑者似角。
纵横布筹,算无遗策
算筹应当如何表达数字和做计算?或许有人会联想起一个经典的笑话:老师教学生写字,讲“‘一’字画一横,‘二’字画两横,‘三’字画三横”,学生马上觉得自己都学会了。父亲让他给姓“万”的人写封信,他画了一天还没画完道道。
看上去像一根根小棍的算筹,要怎么表达数字呢?难道也像这个故事里的学生那样,表达数字“一”摆一根,数字“十”摆十根,数字“万”摆一万根吗?其实,古代的算筹记数依据是“位值制”记数法,即每个数字所表达的数值不仅取决于它本身,而取决于它在记数中所处的位置,这样就能够用较少的符号表达较大的数。算筹的位值制记数法建立在十进制基础上,即每满十数进位,相比于二十进制、六十进制,这种进位制的应用最广泛,我们今天使用的运算法则也是基于十进制的。
至迟在春秋时期,我国的十进位值制已经成熟。《墨子·经下》中提到:“一少于二,而多于五,说在建。”意思是,如果一和二都位于个位,一比二小;但如果一位于十位及以上,它代表的数字就比位于个位的五大。《左传·襄公三十年》记载,晋国绛县老人自称“臣生之岁,正月甲子朔,四百有四十五甲子矣,其季于今,三之一也”。意思是他出生以来经历了445个甲子日,最后一个甲子日是20天前。官吏询问大臣他应该有多少岁,师旷说:“73年。”史赵则给出了一个字谜:“亥有二首六身,下二如身,是其日数也。”答案也是73年。“亥”字的篆体上有二横,下面是三个“人”字,形同“六”字,如果把上面的“二”移到下方,就成了“二六六六零”,将天数折合为年就是73年。(如果是2666天,和现实不符)
约成书于公元3世纪前的《孙子算经》记载了基本的算筹记数法则:“凡算之法,先识其位。一纵十横,百立千僵,千十相望,万百相当。”
“一纵十横,百立千僵”直观地说明了算筹采用的纵式和横式两种记数方法,个位用纵式,十位用横式,百位再用纵式……这样相邻数位纵横交替摆放,避免数位太多时发生混淆。从1到5的数字可以直接摆放对数目的算筹,如果要用算筹表达从6到9的数字,则不需要摆和数字一样多的根数,而是先摆一根代表5,再在和它垂直交叉的方向放上1到4根,就可以分别代表从6到9的数字。算筹中没有表达“零”的字符,用空位代替0。《夏侯阳算经》概括为“满六已上,五在上方,六不积算,五不单张”。
算筹摆位的时候,高位在左,低位在右,和现代的阿拉伯数字相同。如果要摆数字“71824”,并不需要摆71824根,只需要在个位摆4根,十位摆2根,百位摆8根,千位摆1根,万位摆7根就可以。因此,现代认为,“算筹系统是世界上唯一只用一个符号的组合,表示任何十进位数字的系统”。
与之相比,其他古文明中的记数法则显得较为繁琐。比如,以古埃及的数字形式表达“3244”,需要写3个表达1000的文字、2个表达100的文字、4个表达10的文字和4个表达1的文字,并且外形各不相同。古希腊数字则是用不同的字母表达从1到9的数、10到90的十位数和从100到900的百位数,在书写数字时,将对应的字母写在一起,如写“241”就是将代表200的σ、代表40的μ和代表1的α三个字母并列。如果数字较大,则不利于计算和记录得数。
石刻上左栏中间表达数字为2,中下为2/3,底部为1/12;中栏中间表达数字为60,右栏顶部为1/30,中间为1/40。
用算筹做加法、减法,是按照从左到右的顺序,从高位到低位逐位相加、相减,随着加减的结果及时摆出对应位上的算筹,也可以直接在被加或被减的数字上操作,把每位数的结果摆成新的。乘除法也类似,以乘法为例,古人的做法是“上下相乘,实居中央”,先把乘数和被乘数按上下位置摆好,按从左到右的顺序用上面的数的第一位乘下面数的每一位,把乘得的积摆在上下两数中间,然后去掉上面的数的第一位,把下面的数往右移动一位;再用上面数的第二位乘下面数的每一位,把结果和中间的乘积相加……这样以此类推,直到计算完成。做除法是将被除数放中排,除数放下排,商数放上排,余数放在最下一排,刘徽《九章算术注》中定义,在上的筹称“实”,在下的筹称为“法”。
如果用算筹做涉及负数的计算,可以将算筹涂上不同的颜色,宋代使用红色的算筹表示正数、黑色的表示负数;如果使用同色算筹,就在数字最后一位斜放一根,以示区分。做小数计算的话,要将小数部分和整数部分区分开,南宋秦九韶采用的方式是在个位数下记单位名称,比如要计算天数,就在个位数下面标一“日”字。元代刘瑾则将小数部分整体下移一格。做分数计算时,和现代的分数表达形式一样上下摆放,《孙子算经》称在上的筹为“子”,在下的筹为“母”,这就是“分子”“分母”的由来。
算筹能够将每一步的计算结果清晰地表达出来,甚至连视力有障碍的人也能熟练运用它做计算,《梦溪笔谈》里记载了一位擅长算筹的盲人卫朴,“大乘除皆不下照位,运筹如飞,人眼不能逐。人有故移其一算者,朴自上至下手循一遍,至移算处,则检正而去”。体现出中国传统数学解决问题的“机械化”特点,即每一步骤都具有固定程序。除了四则运算,算筹还可以用来做开方、开立方,解高次方程、四元方程等,自先秦至宋代的诸多领先当时世界的数学成就,都离不开算筹的助力。作为我国古代数学的基石,它在推演历法、修建工程、计算人口和赋税等方面都发挥了重要作用。
《筼筜湖问鲤》墨笔销
子非鱼,安知鱼之乐?子非我安知我不知鱼之乐?子未问我,安知我不知鱼#带着边框一起拍# 之乐所乐也?
子非鱼,安知鱼可潜游于渊,鳍遨于波,鱼脊游于江,鱼尾摆于溪,鱼鳃排于海。
子非我,安不知鱼可于五湖游动,随四海漂流,予三江清澈,给俩黄流长江排动,组华夏一脉传承。
子可问我,鱼可翔于空,道为空境而生,鳃息长空之风,脊随满天漫云而动,尾追日月之光而逐浪。
子亦我,我亦鱼,鱼亦你。
故,天阔长空,海阔天空,天水一色,碧澄蓝红相见相生。
子非鱼,安知鱼之乐?子非我安知我不知鱼之乐?子未问我,安知我不知鱼#带着边框一起拍# 之乐所乐也?
子非鱼,安知鱼可潜游于渊,鳍遨于波,鱼脊游于江,鱼尾摆于溪,鱼鳃排于海。
子非我,安不知鱼可于五湖游动,随四海漂流,予三江清澈,给俩黄流长江排动,组华夏一脉传承。
子可问我,鱼可翔于空,道为空境而生,鳃息长空之风,脊随满天漫云而动,尾追日月之光而逐浪。
子亦我,我亦鱼,鱼亦你。
故,天阔长空,海阔天空,天水一色,碧澄蓝红相见相生。
我与你
飞鸟飞翔在天空
与天空平行
但它却有永远飞不到这高空
热带鱼类游于海中
与海洋平行
但它体会不到马里亚纳海沟
汽车穿行于地面
与地面平行
它没把地面跑完
它依旧不能到达它任何想去的地方
人与人有时也就像这
飞鸟、鱼儿、汽车
与天空 、与海洋、与地面
互相平行
有时也不能互相触及
我与你就如同两条平行
彼此能看见彼此
但却终究永远也无法相交
飞鸟飞翔在天空
与天空平行
但它却有永远飞不到这高空
热带鱼类游于海中
与海洋平行
但它体会不到马里亚纳海沟
汽车穿行于地面
与地面平行
它没把地面跑完
它依旧不能到达它任何想去的地方
人与人有时也就像这
飞鸟、鱼儿、汽车
与天空 、与海洋、与地面
互相平行
有时也不能互相触及
我与你就如同两条平行
彼此能看见彼此
但却终究永远也无法相交
✋热门推荐