收藏 分享(赏)

1.3《算法案例》.doc

上传人:微传9988 文档编号:2372046 上传时间:2018-09-14 格式:DOC 页数:9 大小:193.50KB
下载 相关 举报
1.3《算法案例》.doc_第1页
第1页 / 共9页
1.3《算法案例》.doc_第2页
第2页 / 共9页
1.3《算法案例》.doc_第3页
第3页 / 共9页
1.3《算法案例》.doc_第4页
第4页 / 共9页
1.3《算法案例》.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、1.3算法案例【学习目标】1.理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。2.基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。【重点难点】重点:理解辗转相除法与更相减损术求最大公约数的方法。难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言。【学习过程】情境导入:1.教师首先提出问题:在初中,我们已经学过求最大公约数的知识, 你能求出 18 与 30 的公约数吗?2.接着教师进一步提出问题,我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求 825

2、1 与 6105 的最大公约数?这就是我们这一堂课所要探讨的内容。新知探究:1.辗转相除法来源: 数理化网例 1 求两个正数 8251 和 6105 的最大公约数。(分析:8251 与 6105 两数都比较大,而且没有明显的公约数,如能把它们都变小一点,根据已有的知识即可求出最大公约数)解:8251610512146显然 8251 的最大公约数也必是 2146 的约数,同样 6105 与 2146 的公约数也必是 8251 的约数,所以 8251 与 6105 的最大公约数也是 6105 与 2146 的最大公约数。610521462181321461813133318133335148333

3、1482371483740则 37 为 8251 与 6105 的最大公约数。以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前 300 年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:第一步:用较大的数 m 除以较小的数 n 得到一个商 q0和一个余数 r0;第二步:若 r00,则 n 为 m,n 的最大公约数;若 r00,则用除数 n 除以余数 r0得到一个商 q1和一个余数 r1;第三步:若 r10,则 r1为 m,n 的最大公约数;若 r10,则用除数 r0除以余数 r1得到一个商 q2和一个余数 r2;依次计算直至 rn0,此时所得到的 rn-

4、1即为所求的最大公约数。练习:利用辗转相除 法求两数 4081 与 20723 的最大公约数(答案:53)2.更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术。更相减损术求最大公约数的步骤如下:可半者半之,不可半者,副置分母子之数,以少减多,更相减损,求其等也,以等数约之。翻译出来为:第一步:任意给出两个正数;判断它们是否都是偶数。若是,用 2 约简;若不是,执行第二步。第二步:以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。例 2 用更相减损术求 98 与 63 的最大公约数.解:

5、由于 63 不是偶数,把 98 和 63 以大数减小数,并辗转相减,即:9863356335283528728721来源:217141477所以,98 与 63 的最大公约数是 7。来源:练习:用更相减损术求两个正数 84 与 72 的最大公约数。 (答案:12)比较辗转相除法与更相减损术的区别:(1)都是求最大公约数的方法,计算上 辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为 0 则得到,而更相减损术则以减数与差相等而得到3. 秦九韶算法秦九韶计算

6、多项式的方法令 ,则有 ,其中 .这样,我们便可由 依次求出 ;显然,用秦九韶算法求 n 次多项式的值时只需要做 n 次乘法和 n 次加法运算4.进位制进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基数,基数为 n,即可称 n 进位制,简称 n 进制.现在最常用的是十进制,通常使用 10 个阿拉伯数字 0-9 进行记数.对于任何一个数,我们可以用不同的进位制来表示.比如:十进数 57,可以用二进制表示为 111001,也可以用八进制表示为 71、用十六进制表示为 39,它们所代表的数值都是一样的.表示各种进位制数一般在数字右下脚加注来表示,如 11100

7、1(2)表示二进制数,34(5)表示5 进制数.(1).k 进制转换为十进制的方法:, (2).十进制转化为 k 进制数 b 的步骤为:第一步,将给定的十进制整数除以基数 k,余数便是等值的 k 进制的最低位;第二 步,将上一步的商再除以基数 k,余数便是等值的 k 进制数的次低位;第三步,重复第二步,直到最后所得的商等于 0 为止,各次所得的余数,便是 k 进制各位的数,最后一次余数是最高位,即除 k 取余法.要点诠释:1、在 k 进制中,具有 k 个数字符号.如二进制有 0,1 两个数字.2、在 k 进制中,由低位向高位是按“逢 k 进一”的规则进行计数.3、非 k 进制数之间的转化一般应

8、先转化成十进制,再将这个十进制数转化为另一种进制的数,有的也 可以相互转化.【基础达标】1求 324、243、135 这三个数的最大公约数。求三个数的最大公约数可以先求出两个数的最大公约数,第三个数与前两个数的最大公约数的最大公约数即为所求。2用更相减损术求 98 与 63 的最大公约数解:由于 63 不是偶数,把 98 和 63 以大数减小数,并辗转相减 9863356335283528728721217211477所以,98 和 63 的最大公约数等于 7 3已知一个五次多项式为 用秦九韶算法求8.0716.25.325)(4xxxf这个多项式当 x = 5的值。解:将多项式变形: 按由里

9、到外的顺序,.).()f依此计算一次多项式当 x = 5 时的值:, , ,50v2715.138.v 9.68.25.3v, 所以,当 x = 5 时,多项.341.9.684 720245式的值等于 17255.24将二进制数 110011(2)化成十进制数解:根据进位制的定义可知 012345)2( 02110 163所以,110011 (2) =51。来源:1.3算法案例导学案一、预习目标【学习目标】1. 会用辗转相除法与更相减损术求最大公约数的 方法。2. 会利用秦九韶算法求多项式的值。3各进位制之间能灵活转化。【重点难点】重点:辗转相除法与更相减损术求最大公约数的方法和秦九韶算法求

10、多项式的值。难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言。【知识链接】1、理解辗 转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。2、理解秦九韶 算法的思想。二、预习内容什么是进位制?最常见的进位制是什么?除此之外还有哪些常见的进位制?请举例说明三、提出疑惑思考:辗转相除法中的关键步骤是哪种逻辑结构?【学习过程】辗转相除法思路:可以利用除法将大数化小,找两数的最大公约数.(适于两数较大时)(1)用较大的数 m 除以较小的数 n 得到一个商 和一个余数 ;0S0R(2)若 0,则 n 为 m,n 的最大公约数;若 0,则用除数 n 除以余数 得到一个 R 01

11、S和一个余数 ;(3)若 0,则 为 m,n 的最大公约数;若 0,则用除数 除以余数111R1R得到一个商 和一个余数 ;依次计算直至 0,此时所得到的 即为所求12S2n1n的最大公约数.例题 1:求两个正数 1424 和 801 的最大公约数.以上我们求最大公约数的方法就是辗转相除法,也叫欧几里德算法. 由上述步骤可以看出,辗转相除法中的除法是一个反复执行的步骤,且执行次数由余数 是否等于 0 来决定,所以可把它看成一循环体,写出辗转相除法完整的程序框图和程序语言.教学更相减损术:我国早期也有求最大公约数问题的算法,就是更相减损术. 在九章算 术中有更相减损术求最大公约数的步骤:可半者半

12、之,不可半者,副置 分母子之数,以少减多,更相减损,求其等也,以等数约之. 翻译为:(1) 任意给出两个正数;判断它们是否都是偶数. 若是,用 2 约简;若不是,执 行第二步.(2) 以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数. 继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.例题 2. 用更相减损术求 91 和 49 的最大公约数.秦九韶算法:(1)设计求多项式 当 x=5时的值的算法,并写出763452)(2xxxf程序。(2)有没有更高效的算法?能否探求更好的算法,来解决任意多项式的求解问题?引导学生把多项式变形为: 7)63)45()

13、 2xxxf并提问:从内到外,如果把每一个括号都看成一个常数,那么变形后的式子中有哪些“一次式”?x 的系数依次是什么?用秦九韶算法求多项式的值,与多项式组成有直接关系吗?用秦九韶算法计算上述多项式的值,需要多少次乘法运算和多少次加法运算?秦九韶算法适用于一般的多项式的求值问题吗?011)( axxaxfnn怎样用程序框图表示秦九韶算法?观察秦九韶算法的数学模型,计算 时要用到 的值,kv1k若令 ,我们可以得到下面的递推公式:nav0这是一个在秦九韶算法中反复执行的步骤,可以用循环),21(1nkxnk结构来实现。请画出程序框图。例题 3已知一个五次多项式为 用秦九韶算8.0716.25.3

14、25)(4xxxf法求这个多项式当 x = 5 的值。进位制:我们了解十进制吗?所谓的十进制,它是如何构成的?其它进位制的数又是如何的呢?进位制是人们为了计数和运算方便而约定的记数系统。进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值。可使用数字符号的个数称为基数,基数为 n,即可称n 进位制,简称 n 进制。例题 4将二进制数 110011(2)化成十进制数来源:精讲点拨:1求两个正数 8251 和 2146;228 和 1995;5280 和 12155 的最大公约数. 2 求两个正数 8251 和 2146 的最大公约数.3.用秦九韶算法计算多项式在 x=-4 时的值时,V

15、3 的值为 : 【学习反思】比较辗转相除法与更相减损术的区别(1)都是求 的方法,计算上辗转相除法以 法为主,更相减损术以 法为主,计算次数上 法计算次数相对较少,特别当两个数字 时计算次数的区别较明显(2)从结果体现形式来看,辗转相除法体现结果是以 则得到,而更相减损术则以 而得到(3)通过对秦九韶算法的学习,你对算法本身有哪些进一步认识?(4)秦九韶算法在计算一个 n 次多项式的值时,只要做_次乘法运算和_次加法运算。【基础达标】1、用“辗转相除法”求得 459 和 357 的最大公约数是: A3 B9 C17 D512、将数 转化为十进制数为:A. 524 B. 774 C. 256 D. 2603、用秦九韶算法计算多项式当 时的值时,需要做乘法和加法的次数分别是:A. 6 , 6 B. 5 , 6 C. 5 , 5 D. 6 ,5

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 教育范文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报