记数的一小步,人类的一大步(附记数课程PPT下载)
教育
教育
2024-10-11 08:03
海南
前天的文章提到给女儿第一次正式上数学思维课,课程的主要内容来源于下面这篇文章。上次文内提到的PPT,本文文末有获取方式。据传,中国古代南方有个大地主,平时靠欺诈百姓,搜刮了许多钱财,可他是个不识字的人。他想这么多的钱财总得有个有学问的人来继承才好,就把全部的希望都寄托在了儿子身上。于是,他从当地请了一位十分有名的老师来教儿子识字。
第一天,老师教地主的儿子写字,写上一划时,老师告诉他是“一”字;写上二划时,告诉他这是“二”字;三划就是“三”字。地主的儿子听了,扔下笔高兴得跳起来,说:“识字很简单,何必要请老师呢!”地主听从了儿子的话,当天就把老师辞退了,还夸自己的儿子,说他真聪明,这么快就会识字了。隔了几天,地主要请一位姓万的朋友来家吃饭,叫儿子写个请柬。地主的儿子一大早就来到书房动笔写了,大半天过去了,还是没有写成。地主着急得很,接连去催他。儿子很不耐烦地嚷着说:“姓啥不好,偏偏要姓万。我从早上到现在,才写了五百多划哩!”很多人读完这个故事觉得好笑,其实这则故事背后隐藏着一个深刻的问题:我们怎么来记数?自然数虽然不是实实在在存在的物体,但它却是一种客观存在。人类的历史要比自然数的历史长得多。但是,在自然数概念诞生之前,牧羊人也得确认早上赶出去的羊晚上是不是都回来了。石子记数或结绳记数,这些都属于早期的做法,它们与上面的故事一样,都属于加法记数。这类记数采用了最朴素的一一对应思想。有一个物体,就用一根棍子、一颗石子或一个绳结来与之对应。这种方法最大的问题是,当数比较大的时候,棍子、石子或绳结就不够用了。一个自然的想法是,如果我们有不同粗细的棍子,或不同大小的石子,那能不能让不同的棍子或石子对应不同的数量呢?比如,让长棍子表示10个物体,短棍子表示1个物体。据说历史上南美洲有个国家Bakairi,他们有自己的加法记数系统来表示数:很容易看出,在这个记数方法里,tokale表示1, azage表示2,因此azage azage azage azage tokale表示9。而为了表示240这个数,要用整整120个单词!古希腊记数系统则使用了更多的符号,但本质也是基于加法的一个记数系统,相当于用了多种不同长度的棍子表示不同的数。从上面的例子可以看出,加法记数的一个特点是:一个数的数值由所有符号所代表的数值逐个相加而得,同样的符号无论出现在什么位置,所代表的数值都一样。有些历史上的加法记数系统我们一直沿用至今,比如罗马记数。
在罗马记数里,用I, V, X, L, C, D, M这几个符号分别代表1,5,10,50,100,500,1000。比如,在罗马记数里,CLXXII
= 100+50+10+10+1+1=172。为了表示较大的数,罗马记数采用了一种做法:在一个符号上面加一横,表示这个符号所代表的数值×1000。比如:但如果纯粹用上面的法则,那么数字4和9要分别表示为IIII和VIIII,这样书写起来比较繁琐。为了提升书写效率,减少所书写的符号数,罗马记数引入了减法规则,该规则如下:- 如果一个数字中的基本符号的值小于它右边的一个符号,那么从较大的值中减去较小的值来得到这个组合的值
例如:IV=5-1=4, IX=10-1=9, XL=50-10=40- 只有10的整数幂次I(1),
X(10), C(100)才能充当减数,并且它们只能与罗马数字符号表中相邻的两个更大的值配对,从而避免歧义:
在这一规则下,为了解码一串罗马记数符号所表示的数值,就不再是简单把每个符号所代表的数值相加,还要考虑两个连续的符号是否符合减法规则,例如:MCMXCIV=1000+(1000-100)+(100-10)+(5-1)=1994试想,如果用上面的古希腊记数系统来表示100亿,那需要用200000个符号,这些个符号足足可以编成一本厚厚的书!
当然,为了减少表示100亿所用的符号个数,我们也可以发明一些新的符号来表示更大的数值。比如可以发明表示100000,500000,1000000,5000000,10000000,50000000,100000000,500000000等数值的符号,这样就能用更少的符号表示更大的数,但问题也随之而来:所需要记住的符号数量变得越来越多!因此,用加法记数我们就陷入了两难。为了克服上述缺陷,人们想到了一个方案:能不能用同样的符号表示不同的数值?位值制就是基于这一思想而来的。它最核心的一点就是:同样的符号位于不同的位置,可以表示不同的数值。现在世界各国和各地区都广泛采用了十进位值制的记数系统,该记数系统使用了十个符号进行记数,即1、2、3、……、9、0,这些符号被我们称作阿拉伯数字。值得一说的是,阿拉伯数字并不是阿拉伯人发明的,而是印度人发明的,阿拉伯人只是起到了传播者的作用。数码:用不同的数字符号来表示一种数制的数值,这些数字符号被称为“数码”。N进制需要N个数码,例如十进制需要0~9十个数码,二进制则只需要0、1两个数码。基:数制所使用的数码个数称为“基”。例如十进制的基为10,二进制的基为2。权:某个数制每一位所具有的值称为“权”。例如,十进制数243中(如下图所示),2表示2个100(102),4表示4个10(101),3表示3个1;二进制数1101中,从左至右的3个1分别代表1个23,1个22和1个20。下面几张图分别是十进制、二进制、八进制和十六进制的数码、基、权的示意。值得一提的是,十六进制需要用16个数码,除了0-9这十个阿拉伯数字之外,还用了A-F这6个字母。事实上,用哪些符号并不重要,只需要有16个不同的符号分别表示0-15这16个不同的数码就可以了。其实,十进制在中国古代早已有了。我国古代基于十进位制的算筹记数法,在世界数学史上可谓是一项伟大的发明。据记载,古代的算筹实际上是一根根同样长短和粗细的小棍子,大多用竹子制成,也有用木头、兽骨、象牙等材料制作而成的。需要记数和计算的时候,就把它们取出来放在桌上或地上摆弄。采用算筹记数时,以纵、横两种排列方式来表示数字,如下图所示。表示多位数时,用纵式表示个位、百位、万位等,用横式表示十位、千位、十万位等,需要表示零时则置空。下图分别给出了6728和6708两个数的算筹表示。与世界上其他古老民族的记数法相比,中国古代的十进制算筹记数法具有位值制思想,其优越性是显而易见的。早在商代时,中国已采用了十进位值制。古罗马和古埃及的记数系统没有使用位值制,因此表示大一点的数目相当繁琐。古巴比伦人用的是六十进制,足足有六十个数码,难以记忆。可以说,中国古代数学的繁荣与持续发展与算筹这一伟大的发明是紧密相关的。下面是古巴比伦六十进制所采用的数码符号。可以看出,为了降低数码的记忆难度,古巴比伦人在数码的生成上采用了加法记数的思想。比如,47这个数码有左右两部分组成,左边是数码40的符号,右边则是数码7的符号。但整体而言,古巴比伦的记数属于位值记数。比如下面的第一个两位数表示72,而第二个三位数则表示4000。采用了位值记数后,表示一个数所需要的符号数大大降低,计算也变得更为简单。别看前面例子中古希腊加法记数系统里用一个符号就可以表示50000,而用二进位值制表示为1100001101010000,足足需要16位!但如果要表示1亿,用古希腊加法记数则需要2000个符号,而用二进制表示为101111101011110000100000000,只需要27位。可以说,位值制表示极大地促进了数学的繁荣与发展。从加法记数到位值记数的变化,是记数发展的一小步,但却是人类文明发展的一大步。作者:昍爸,中国科学院计算机博士,大学教授,博士生导师。主持国家自然科学基金4项,在国内外高水平期刊和会议发表论文60余篇。曾获初中和高中全国数学奥林匹克联赛一等奖,江苏赛区第一名,高考数学满分。著有畅销书《写给孩子的数学之美》、《搞定平面几何:辅助线是怎么想出来的》、《给孩子的数学思维课》与《给孩子的数学解题思维课》。1. 写干货不易,获取PPT前别忘了“点赞”和“转发”本文。
2. 昍爸记数课程PPT获取方式:关注公号后,发送消息“昍爸记数PPT”,可获取下载链接。3. 关于昍(xuan)爸的课程介绍,请看下面几篇文章: