查看原文
其他

【数学故事】原来金庸的武侠江湖也有这么多数学故事

赵志桐 老杨和数学的故事 2022-07-17

点击上方蓝字关注 老杨和数学的故事

文:赵志桐   授权:道和老师教数学

往期荐读

>数学故事】真的是这样的吗?

>【数学故事】少年,考考你!用直尺和圆规画出正十七边形!

>【教育思考】浅谈学唱英文歌对学习英语的作用

>【数学日历】2019年,365天,每天一点数学知识哦~

>【乐经典】学唱英文歌 · Do Re Mi -Day 3

>【七年级】数学 · 第2章 整式的加减 章节综合提升

>【八年级】数学微课 · 第12章 全等三角形 微课汇总

>【九年级】数学微课 · 22.1.3 (5)用待定系数法求二次函数解析式

>【中考英语】语法系列|一般过去时,不规则动词过去式分类,考点全解析!

>【教育者说】初中这三年如何帮孩子进行学习布局!

>【教育思考】尊重孩子和溺爱孩子的界限在哪里?

更多精彩,请点击文末“阅读原文


大师远去,再无大师,您一路走好


“飞雪连天射白鹿,笑书神侠倚碧鸳”


老爷子一生总共写了15本武侠小说,他是武侠小说的一代宗师,对诸子百家、佛经道藏、诗词歌赋、医卜星象等等都了然于胸,其作品也被认为是中国文化的瑰宝。


除去这些,金庸小说中亦包含了浓厚的数学文化


如《连城诀》中,将宝藏隐藏在一串数字里;


“九阴真经”“独孤九剑”“六脉神剑”这些绝世神功都含有数字9或者6;


《射雕英雄传》,瑛姑研究的算术题……


其实仔细研究,不难发现,数学和文学是相通的,而里面蕴涵的信息之精妙。


现在,我们以《射雕英雄传》瑛姑算算术这一小说情节为例,一起来探讨下,金庸的武侠江湖中的数学故事。



古人是如何开平方的


 


在《射雕英雄传》之中就有这么一段情节:

 

黄蓉坐了片刻,精神稍复,见地下那些竹片都是长约四寸,阔约二分,知是计数用的算子。再看那些算子排成商、实、法、借算四行,暗点算子数目,知她正在计算五万五千二百二十五的平方根,这时“商”位上已记算到二百三十,但见那老妇拨弄算子,正待算那第三位数字。黄蓉脱口道:“五!二百三十五!”

 

那老妇吃了一惊,抬起头来,一双眸子精光闪闪,向黄蓉怒目而视,随即又低头拨弄算子。这一抬头,郭、黄二人见她容色清丽,不过四十左右年纪,想是思虑过度,是以鬓边早见华发。


那女子搬弄了一会,果然算出是“五”,抬头又向黄蓉望了一眼,脸上惊讶的神色迅即消去,又见怒容,似乎是说:“原来是个小姑娘。你不过凑巧猜中,何足为奇?别在这里打扰我的正事。”顺手将“二百三十五”五字记在纸上,又计下一道算题。





这段故事当中,郭靖与黄蓉被铁掌派追杀,郭、黄二人无意中闯到瑛姑的小屋中,正巧撞见瑛姑正在算这样一道开平方的问题。

 

那么小说当中,宋朝人用来计算平方根的方法是什么呢?我们今天就来介绍一下。


增乘开方法


小说中所提到的这种计算平方根的方法叫做增乘开方法,是由我国古代数学家贾宪在十一世纪中叶所提出来的,其方法与意大利数学家鲁裴尼(P.Ruffini)和英国数学家霍纳(W.G.Horner)所提出来的高次方程数值解法相同,但比他们早了750年。

 

那么增乘开方法是如何来计算一个数的平方根的呢?

 


01

举个例子



我们就以小说中瑛姑所计算的求55,225的平方根这个问题为例(为了便于理解我们就直接用阿拉伯数字来表示,就不用算筹啦。

 

首先我们把55,225放入实这一行



1.由于55,225是一个五位数,因此我们估算商应当是一个三位数,并且由于万位上的数是5,所以估计商的百位数是2(200的平方是40,000,而300的平方是90,000,所以商的百位数一定是2)。

 

2.令借为1,法的值则为借乘商(1×2)。

 


3.更新实,使之为原实减去商乘法(5-2×2=1),则新实为1。



4.更新法为商乘借加到旧法上(2+2×1=4)。



5.将法后移一位,借后移两位。

 



02

再次重复1- 5的循环


 

1.估算商的十位为3(3×4,000=12,000<15,225)。

 


2.更新法,为原法加十位商乘借(4,000+3×100=4,300)。

 



3.更新实,使之为原实减去商乘法(15,225-4,300×3=2,325),则新实为2325。

 


4.更新法为商乘借加到旧法上(43+3×1=46)。



5.将法后移一位,借后移两位。

 



03

再一次重复这五个步骤

 


1.估算商的个位为5。

 


2.更新法,为原法加个位商乘借(460+5×1=465)。



3.更新实,使之为原实减去商乘法(2325-465×5=0)。




到这一步我们惊喜的发现,实的值为0了,也就是说我们最后解出来了55,225的平方根为235。

 

我们可以再验证一下,计算235的平方。




发现235的平方果然是55,225,也就是说我们的计算结果是正确的。



04

增乘开方法的步骤



总结一下,增乘开方法其实一共五个步骤:

 

  • 估算商;

  • 用商乘借加到法上;

  • 实减去商乘法;

  • 再用商乘借加到法上;

  • 法后移一位,借后移两位。


然后只要不断地循环上述步骤,直到实为0,此时的商就是我们所求的平方根的值啦。虽然步骤比较抽象,但是对照着例子还是比较容易理解的。



如何用增乘开方法开更高次方

 



上面我们说到,郭靖黄蓉二人误打误撞来到了瑛姑的小屋,看到她正在计算一道开平方的问题,我们继续来看小说后面的案例:

 


这次是求三千四百零一万二千二百二十四的立方根,她刚将算子排为商、实、方法、廉法、隅、下法六行,算到一个“三”,黄蓉轻轻道:“三百二十四。”那女子“哼”了一声,哪里肯信?布算良久,约一盏茶时分,方始算出,果然是三百二十四。




接下来瑛姑又计算了一道开立方的问题,那么如何来开一个数的立方根呢?其实之前我们所讲的增乘开方法,不只能用来开平方根,还能用来开立方以及更高次方的根。我们接着介绍一下如何用增乘开方法开更高次的平方。

 


01

小说中的bug



书中所写故事的时代背景是写到成吉思汗去世为止,成吉思汗死于公元1227年,而关于贾宪的增乘开方法的提出时间,所能找到的最早的记载是杨辉的《详解九章算法纂类》,该书写于1261年。

 

也就是说,瑛姑所用的开平方的方法,如果按照时间关系上来看,所用的应该是时间更早的《九章算术》中的开平方的方法;


但如果根据书中所写的瑛姑把算筹摆成“商、实、法、借”四行的话,就应该用的是贾宪的增乘开方法了。

 

而瑛姑所用的开立方的方法,将算子摆为六行,又是《九章算术》的方法了,用增乘开方法的话只需要摆成五行就够了。

 

增乘开方法是贾宪在《九章算术》中开方的方法的基础上,对传统方法进行改进,并推广到了开更高次方的情况,因此,我们还是主要来介绍增乘开方法。

 


02

先复个习



我们先来复习一下,之前所讲的增乘开方法的五个步骤:估算商;用商乘借加到法上;实减去商乘法;再用商乘借加到法上;法后移一位,借后移两位。

 

只要不断循环这五个步骤,直到实变为0,所得到的商就是我们的结果啦。

 

开平方与开立方的方法是类似的,我们介绍完开立方的方法之后,再经过类比,推广出开任意次方的方法。

 


03

举个例子



接下来我们还是以小说中的这道题为例来计算,为了便于理解,我把每一步计算所变化的数框了起来~

 

先将被开方数放到实的位置上,并将1置于下法。



将下法的1每次向前移动两格,共移动了三次,说明商应当是一个三位数。

 


接下来正式开始计算啦~

 

1.估算商的值为3(3的三次方为27,小于34)。



2.用商乘下法置于廉(3×1=3),再用商乘廉置于方(3×3=9)。



3.实减去商乘方(34-3×9=7)。




4.商乘下法加到廉(3×1+3=6),商乘廉加到方(9+3×6=27)。



再用商乘下法加到廉(3×1+6=9)。



5.将方、廉、下法一次向后退1、2、3格。

 



然后我们就可以开始下一个循环啦。

 

1.估计商的十位为2。



2.商乘下法加到廉,商乘廉加到方。



3.实减去商乘方。




4.商乘下法加到廉,商乘廉加到方,商乘下法加到廉。

 


5.将方、廉、下法一次向后退1、2、3格。

 



第二个循环结束,开始第三遍啦~

 

1.估计商的个位为4。

 



2.商乘下法加到廉,商乘廉加到方。



3.实减去商乘方。




我们惊喜的发现,实变成了0,也就是说,我们所求的34,012,224的立方根就是324啦~

 


04

开立方的步骤



我们总结一下,开立方其实也是五个步骤:

 

  • 估算商;

  • 商乘下法加到廉,商乘廉加到方;

  • 实减去商乘方;

  • 商乘下法加到廉,商乘廉加到方,商乘下法加到廉;

  • 将方、廉、下法一次向后退1、2、3格。

 

和开平方的步骤一样,接下来只要不断地循环以上步骤,直到实为0,此时的商便是所求的根啦~

 


05

推广到开任意次方的步骤


 

我们先把开平方和开立方的步骤放到一起来对比一下。



从这个表格中我们能够非常容易的找到规律,从而总结出用增乘开方法开任意正整数次方的方法。

 

假设我们要求一个数的n次方(n为正整数),那么我们共需要写出n+2行,前两行分别是商和实,其余的n行我们用N1、N2、···、Nn来表示。

 

将被开方数放入实这一行,在Nn上的最后一格放上一个1,将Nn上的1向左移动,每次移动n-1格,在下一次移动便会超出实的时候停止,此时1移动的次数便是商的位数。

 

接下来,我们就可以开始进行五个步骤循环的计算啦~

 

1.估算商。估计出一个商的第一位数的值,设它为a1,a1的n次方应当小于1上面的实的值,而a1+1的n次方是大于它的。

2.依次从下到上填入数字,Nn中已经填入了1,接下来

 

Nn-1=a1×1

Nn-2=a1×Nn-1

……

N1=a1×N2

 

3.更新实。新的实=原实-N1×a1

4.更新从N1到Nn。

 

第1轮:

 

Nn-1=a1×1+Nn-1

Nn-2=a1×Nn-1+Nn-2

……

N1=a1×N2

 

第2轮:

 

Nn-1=a1×1+Nn-1

Nn-2=a1×Nn-1+Nn-2

……

N2=a1×N3

 

如此不断循环下去,一直重复到第n-2轮,只剩下一步,Nn-2=a1×Nn-1+Nn-2为止。

 

5.将从N1到Nn上的数依次向后移动1、2、3、...n个格。

接下来只要重复上述几个步骤,直至实变为0为止。

 

如果是无法开出整数的情况的话,实便永远除不尽,便可以不断地重复上述步骤,得到后面无穷无尽的小数啦。



幻方、九宫八卦与河图洛书



接下来我们继续来看小说中的内容,情节并没有任何进展,郭黄二人还在瑛姑的小屋中,黄蓉和瑛姑开始讨论关于幻方的内容


说是讨论,其实是学霸黄蓉对学渣瑛姑的碾压


首先是瑛姑给黄蓉出了一道三阶幻方的问题,被黄蓉嘲笑说你这题太小儿科我根本不放在眼里,原文如下:



那女子沮丧失色,身子摇了几摇,突然一交跌在细沙之中,双手捧头,苦苦思索,过了一会,忽然抬起头来,脸有喜色,道:“你的算法自然精我百倍,可是我问你:将一至九这九个数字排成三列,不论纵横斜角,每三字相加都是十五,如何排法?”


黄蓉心想:“我爹爹经营桃花岛,五行生克之变,何等精奥?这九宫之法是桃花岛阵图的根基,岂有不知之理?”当下低声诵道:“九宫之义,法以灵龟,二四为肩,六八为足,左三右七,戴九履一,五居中央。”边说边画,在沙上画了一个九宫之图。那女子面如死灰,叹道:“只道这是我独创的秘法,原来早有歌诀传世。”



那我们就来看一下瑛姑出的这道九宫图。



01

九宫图(三阶幻方)



瑛姑所出的题目呢其实就是,将1~9这9个数填入下面的三乘三的表格中,使得横、竖、斜相加之和都是十五。



可能很多同学觉得这个太简单了,我小学的时候就会做了,确实这个问题难度不大,不过黄蓉所说的口诀还是蛮有意思的,我们来看一下:


九宫之义,法以灵龟,二四为肩,六八为足,左三右七,戴九履一,五居央。


啥意思咧,意思是将这个九宫图当成一个龟,2和4放在龟的肩膀上,6和8放在龟的脚上,左边是3,右边是7,头上是9,尾巴是1,5在中间。


需要注意的是,古代写字是从右往左写的,所以“二四为肩,六八为足”也是要按照从右往左写的顺序来的。


我们按照口诀来画到龟龟上,就是这样了:



把它整理到表格上:


其实这个图形,就是我们古代所说的洛书,就是封面图的这个样子:



这个图中小圆圈的数量就分别代表了所对应的数字;

据传说,有神龟从洛水中出现,背上驮着的就是洛书,伏羲氏得到它据此画出了八卦(河出图,洛出书,圣人则之。) 


下面这个图就是神龟背上驮着洛书的样子:




02

四四图(四阶幻方)



接下来,黄蓉又继续往下介绍了关于幻方的内容:



那女子面如死灰,叹道:“只道这是我独创的秘法,原来早有歌诀传世。”黄蓉笑道:“不但九宫,即使四四图,五五图,以至百子图,亦不足为奇。就说四四图罢,以十六字依次作四行排列,先以四角对换,一换十六,四换十三,后以内四角对换,六换十一,七换十。这般横直上下斜角相加,皆是三十四。”那女子依法而画,果然丝毫不错。



我们来按照黄蓉所说的方法来填一下:


首先把数字从一到十六顺次放入表格中,


接下来将四个角分别对换位置:



再将里面的四个角互相交换位置:



这样我们所得到的幻方的横、竖、斜相加都是34啦~



03

九宫八卦图



说完这些,黄蓉又继续介绍:



黄蓉道:“那九宫每宫又可化为一个八卦,八九七十二数,以从一至七十二之数,环绕九宫成圈,每圈八字,交界之处又有四圈,一共一十三圈,每圈数字相加,均为二百九十二。这洛书之图变化神妙如此,谅你也不知晓。”举手之间,又将七十二数的九宫八卦图在沙上画了出来。



这个九宫八卦图看起来有点难,其实呢只需要圈内的数字相加起来相等就好了,并不需要横、竖、斜相加相等,所以也不是很难啦~


这一题小说里没有说如何来解,那我们就一起来解解看好了。


先按照书中所说的内容把图画出来:


如图所示,八个数围成一个圈,九宫格的九个圈加上交界处的四个圈一共十三个圈,我们要在这十三个圈中填入72个数,使得每个圈中的数字之和为292。


仔细观察这个图,我们能够发现我们可以把每斜着的两个数看做一组,


这样这个图就可以简化成这样:



只要我们能让这个图中每个中的数字相等,也就是每两个数的和相等,就能够满足题里的要求啦~


想让各组数相等,可就简单的多了, 只需要把从1到72这些数首尾配对、两两一组,即1与72一组,2与71一组,以此类推,再把各组数分别填入就好啦,我们最后得到的答案是这样的:




04 

总结一下



这次我们主要介绍了三阶幻方(洛书)、四阶幻方(四四图)以及九宫八卦图这三种幻方。


关于幻方,其实是有着通用的解法的,通常要分为奇数阶、单偶数阶和双偶数阶这三种情况来讨论,不过具体解法比较复杂篇幅有限,我们就以后有机会再来介绍好啦~



参考资料


[1] 金庸. 射雕英雄传[M]. 北京: 生活·读书·新知三联书店, 1994.

[2] 梅荣照. 贾宪的增乘开方法——高次方程数值解的关键一步[J]. 自然科学史研究, 1989, (01)::1-8.

[3] 李兆华. 增乘开方法与贾宪三角形[J]. 中等数学, 1986, (1): 44-45.




—over—



老杨和数学的故事

微信号:YoungMath

老杨和数学的故事是初中教师、学生和家长的聚集地,我们专注于初中生数学教育和分享教育教学资讯主要内容有:抛物线压轴解析、初中数学同步教学微课(含配套练习)中招体育、理化生实验、化学微课、亲子沟通、学法指导等。立足数学,也谈其他。我们旨在分享资讯资源,促进全面发展。


 点击 阅读原文 获取更多~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存