1.3中国古代数学中的算法案例

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
辗转相除法算法分析 从上面例子可以看出, 从上面例子可以看出,辗 转相除法中也包含重复的 操作, 操作,因此可以用循环结 构来构造算法。 构来构造算法。 给定两个正数m S1:给定两个正数m,n。 计算m 除以n所得的余数r S2:计算m 除以n所得的余数r。 m=n,n=r。 S3:m=n,n=r。 r=0, S4:若r=0,则m,n的最大公 约数等于m 否则,返回S2 S2。 约数等于m;否则,返回S2。 Bqr6401@126.com
Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
(2)更相减损术 第一步:任意给两个正整数,如果它们都是偶数, 第一步:任意给两个正整数,如果它们都是偶数,用2约简; 约简; 若不是,执行第二步。 若不是,执行第二步。 第二步:以较大的数减去较小的数, 第二步:以较大的数减去较小的数,接着把所得的差与较 小的数比较,并以大数减小数。继续这个操作, 小的数比较,并以大数减小数。继续这个操作,直到它们 相等为止,则这个“相等的数”就是所求的最大公约数; 相等为止,则这个“相等的数”就是所求的最大公约数; 如果操作过程中有约分,还要在“等数” 如果操作过程中有约分,还要在“等数”上乘以约掉的因 数。
所以,78和36的最大公约数为6 所以,78和36的最大公约数为6。 的最大公约数为 此种算法称为“等值算法” 此种算法称为“等值算法”。
Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
6300 3105 1050 210 30
2 3
6300
2310
3105 1155 385 77 11
5 1435 7 287 41
5 1050 7 210 30
它们有相同的公约数,因此也有相同的最大公约数。 它们有相同的公约数,因此也有相同的最大公约数。难道 这只是巧合吗? 这只是巧合吗? 可以证明它们有相同的公约数( 可以证明它们有相同的公约数(略)。 Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
当两个数比较大时( 8610与6300),使用上述方法 当两个数比较大时(如8610与6300),使用上述方法 ), 求最大公约数就比较困难。 求最大公约数就比较困难。下面我们介绍两种古老而有效 的算法——辗转相除法与更相减损术。 ——辗转相除法与更相减损术 的算法——辗转相除法与更相减损术。 (1)辗转相除法(*) 辗转相除法(*) 例子:辗转相除法求8610和6300的最大公约数。 例子:辗转相除法求8610和6300的最大公约数。 8610 的最大公约数 为了简洁,我们把8610和6300的最大公约数记作(8610, 为了简洁,我们把8610和6300的最大公约数记作(8610, 8610 的最大公约数记作 6300)。 6300)。 把8610变为下式 8610变为下式 6300× 8610 = 6300×1 + 2310 Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
我们来看一下(8610,6300) 我们来看一下(8610,6300)和(6300,2310)之间的关系 6300,2310)
2 3
8610 4305
2
18 30 39 3 15 5
所以,18与30的最大公约数是 的最大公约数是2 3=6。 所以,18与30的最大公约数是2×3=6。
这个方法可以总结为:用两个数连续除以他们的公约数, 这个方法可以总结为:用两个数连续除以他们的公约数, 一直除到所得的商是互质数为止, 一直除到所得的商是互质数为止,然后把所有的除数连乘起 来。 Bqr6401@126.com
Bqrwk.baidu.com401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
(2)更相减损术 例如: 78和36的最大公约数。 例如:求78和36的最大公约数。 的最大公约数 78,36) 解: (78,36) (6,30) 30) (6,12) 12) (42,36) 42,36) (6,24) 24) (6,6) (6,36) 36) (6,18) 18)
Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念2.割圆术 概念2.割圆术 2.
所谓“割圆术” 所谓“割圆术”,是用圆内接正多边形的周长去无限 逼近圆周并以此求取圆周率的方法。这个方法, 逼近圆周并以此求取圆周率的方法。这个方法,是我国魏 晋时期刘徽在批判总结了数学史上各种旧的计算方法之后, 晋时期刘徽在批判总结了数学史上各种旧的计算方法之后, 经过深思熟虑才创造出来的一种崭新的方法。 经过深思熟虑才创造出来的一种崭新的方法。 可以想象,在当时需要付出多么 按照这样的思路,刘徽把圆内接 刘徽从圆内接正六边形把圆周等 可以想象, 按照这样的思路, 分为六条弧的基础上,再继续等分, 艰辛的劳动。 正多边形的面积一直算到了正3072 3072边 正多边形的面积一直算到了正3072边 分为六条弧的基础上,再继续等分, 艰辛的劳动。现在让我们用刘徽的思 把每段弧再分割为二, 3.14和 使用计算机求圆周率的近似值。 形,并由此而求得了圆周率 为3.14和 把每段弧再分割为二,做出一个圆内 想 使用计算机求圆周率的近似值。 接正十二边形, 3.1416这两个近似数值 这两个近似数值。 计算机的最大特点是运算速度快, 接正十二边形,这个正十二边形的周 3.1416这两个近似数值。这个结果是 计算机的最大特点是运算速度快,只 要我们将运算方法告诉计算机, 长不就要比正六边形的周长更接近圆 要我们将运算方法告诉计算机,计算 当时世界上圆周率计算的最精确的数 周了吗?如果把圆周再继续分割,做” 周了吗?如果把圆周再继续分割, 机会迅速得到所求的答案。“割圆术” 据。刘徽对自己创造的这个“割圆术 机会迅速得到所求的答案。 刘徽对自己创造的这个 成一个圆内接正二十四边形, 新方法非常自信, 成一个圆内接正二十四边形,那么这 新方法非常自信,把它推广到有关圆 形计算的各个方面, 个正二十四边形的周长必然又比正十 形计算的各个方面,从而使汉代以来 二边形的周长更接近圆周。 的数学发展大大向前推进了一步。 二边形的周长更接近圆周。 的数学发展大大向前推进了一步。 Bqr6401@126.com
Bqr6401@126.com
普 通 高 中 课 程 标 准
Liangxiangzhongxue
二、提出问题
本节主要介绍的内容 更相减损之术(又称“等值算法” 一、更相减损之术(又称“等值算法”) ----研究如何求二个正整数的最大公约数 研究如何求二个正整数的最大公约数。 ----研究如何求二个正整数的最大公约数。 二、割圆术 ----解决圆周率π的近似值问题。 ----解决圆周率π的近似值问题。 解决圆周率 三、秦九韶算法 ----解决求多项式函数值问题。 ----解决求多项式函数值问题。 解决求多项式函数值问题
良乡中学数学组 良乡中学数学组 任宝泉
怀 天 天才就是百分之一的灵感,百分之九十九的汗水! 什 才 在 于 勤 径,学 力 书 么 也 路 勤习,老 来 么 也 崖 学 作 功! 勤劳的孩子展望未来, 什 徒 才 能 但懒惰的孩子享受现在!!! 勤劳的孩子展望未来 但懒惰的孩子享受现在 天 小 不 不 , 的奋,努 知 伤 悲不 到 舟 成功=艰苦的劳动+正确的方法+少谈空话 少 山 有 下 学问为 求人 真 海 无,学 苦成 做 !!! 人
普通高中课程标准数学3(必修 普通高中课程标准数学 必修) 必修
第一章 算法初步
1.3 中国古代数学中的算法案例
良乡中学数学组 制作: 制作:任宝泉 2011年5月12日 年 月 日
一、复习引入
普 通 高 中 课 程 标 准
Liangxiangzhongxue
我们在小学、中学学到的算术、代数, 我们在小学、中学学到的算术、代数,从计数 到多元一次联立方程组以及方程的求根方法, 到多元一次联立方程组以及方程的求根方法,都是 我国古代数学家最先创造的, 我国古代数学家最先创造的,有的比其他国家早几 百年甚至上千年。我国人民在长期的生活、 百年甚至上千年。我国人民在长期的生活、生产和 劳动中,创造了很多数学的计算和思想方法。 劳动中,创造了很多数学的计算和思想方法。 下面我们举一些我国古代代数学中“算法” 下面我们举一些我国古代代数学中“算法”的 例子,让同学们体会“算法”的概念, 例子,让同学们体会“算法”的概念,看一看中国 古代数学在算法上的伟大成就。 古代数学在算法上的伟大成就。
(2)更相减损术 m=input("m="); n=input("n="); while m<>n if m>n m=mm=m-n; else n=nn=n-m; end end print(%io(2),m,n);
开 始 输入m、 输入 、n
y m=m-n
m>n >
N n=n-m N
m=n = y 输出m、 输出 、n 结 束
Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1. 你记得在小学里是如何求最大公约数吗? 你记得在小学里是如何求最大公约数吗? 对了,用短除法。例如求18和30的最大公约数: 对了,用短除法。例如求18和30的最大公约数: 18 的最大公约数
开始 输入: 输入:m,n
r = m MOD n m =n n =r r=0?
No
Yes
输出: 输出:m 结束
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
(2)更相减损术 《九章算术》是中国古代的数学专著,其中有这样一段论 九章算术》是中国古代的数学专著, 可半者半之,不可半者,副置分母、子之数, 述:“可半者半之,不可半者,副置分母、子之数,以少 减多,更相减损,求其等也。 减多,更相减损,求其等也。”。 这是一个求最简分式的算法,可以用它来求最大公约数, 这是一个求最简分式的算法,可以用它来求最大公约数, 我们称为“更相减损术”。 我们称为“更相减损术” 翻译为现代语言如下
开始 输入: 输入:m,n
r = m MOD n m =n n =r r=0?
No
Yes
输出: 输出:m 结束
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
辗转相除法的Siclab程序 辗转相除法的Siclab程序 Siclab m=input("m="); n=input("n="); if m<n x=m;m=n;n=x; end r=n; while r<>0 r=modulo(m,n); m=n; n=r; end print(%io(2),m) Bqr6401@126.com
三、概念形成
普 通 高 中 课 程 标 准
Liangxiangzhongxue
概念1.求两个正整数的最大公约数 概念1.求两个正整数的最大公约数 1.
我们可以总结为: 我们可以总结为: 被除数,除数) 除数,余数) (被除数,除数)=(除数,余数)
最大公约数
据此,我们可以用如下办法求8610和6300的最大公约数: 据此,我们可以用如下办法求8610和6300的最大公约数: 8610 的最大公约数 8610,6300) 被除数 除数 余数 (8610,6300) 6300× =(6300,2310) 8610 = 6300×1 + 2310 =(6300,2310) 6300 = 2310×2 + 1680 2310× =(2310,1680) =(2310,1680) 1680× =(1680,630) 2310 = 1680×1 + 630 =(1680,630) 630× =(630,420) 1680 = 630×2 + 420 =(630,420) 420× =(420,210) 630 = 420×1 + 210 =(420,210) 210× 420 = 210×2 + 0 =210 这就是辗转相除法。由除法的性质可知, 这就是辗转相除法。由除法的性质可知,对于任意两个正 整数,上述除法步骤总可以在有限步之后完成, 整数,上述除法步骤总可以在有限步之后完成,从而总可 以用辗转相除法求出最大公约数。 以用辗转相除法求出最大公约数。 Bqr6401@126.com
相关文档
最新文档