分享

武侠小说中的数学 ——古人是如何开平方的?

 周原樵翁 2018-06-23



封面图为老顽童周伯通和瑛姑~


▍引子


在金庸的武侠小说当中,常常出现与中国古代数学有关的内容,比如在《射雕英雄传》之中就有这么一段情节:


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

那老妇吃了一惊,抬起头来,一双眸子精光闪闪,向黄蓉怒目而视,随即又低头拨弄算子。这一抬头,郭、黄二人见她容色清丽,不过四十左右年纪,想是思虑过度,是以鬓边早见华发。那女子搬弄了一会,果然算出是“五”,抬头又向黄蓉望了一眼,脸上惊讶的神色迅即消去,又见怒容,似乎是说:“原来是个小姑娘。你不过凑巧猜中,何足为奇?别在这里打扰我的正事。”顺手将“二百三十五”五字记在纸上,又计下一道算题。


83版射雕中正在低头算题的瑛姑


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


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


▍增乘开方法


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

此处本该有个贾宪的照片,然而我没找到


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


▍举个例子

我们就以小说中瑛姑所计算的求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)将法后移一位,借后移两位

然后我们再次重复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)将法后移一位,借后移两位

第二轮结束,第三轮开始,再一次重复这五个步骤,

1)估算商的个位为5;

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

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

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

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

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


▍总结


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


  1. 估算商;

  2. 用商乘借加到法上;

  3. 实减去商乘法;

  4. 再用商乘借加到法上;

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


然后只要不断地循环上述步骤,直到实为0,此时的商就是我们所求的平方根的值啦~


虽然步骤比较抽象,但是对照着例子还是比较容易理解的~


▍参考资料


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

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


* 作者:道和,来源:道和老师教数学,本文系作者投稿。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多