收藏 分享(赏)

1.3《算法案例》教案(新人教必修3).doc

上传人:高**** 文档编号:5715 上传时间:2024-05-23 格式:DOC 页数:5 大小:79KB
下载 相关 举报
1.3《算法案例》教案(新人教必修3).doc_第1页
第1页 / 共5页
1.3《算法案例》教案(新人教必修3).doc_第2页
第2页 / 共5页
1.3《算法案例》教案(新人教必修3).doc_第3页
第3页 / 共5页
1.3《算法案例》教案(新人教必修3).doc_第4页
第4页 / 共5页
1.3《算法案例》教案(新人教必修3).doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、高考资源网提供高考试题、高考模拟题,发布高考信息题本站投稿专用信箱:ks5u,来信请注明投稿,一经采纳,待遇从优13进位制教学目标:1了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换。 2学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k去余法,并理解其中的数学规律。教学重点:各进位制表示数的方法及各进位制之间的转换教学难点:除k取余法的理解以及各进位制之间转换的程序框图及其程序的设计学法:学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法

2、。教学过程引入:我们常见的数字都是十进制的,比如一般的数值计算,但是并不是生活中的每一种数字都是十进制的.比如时间和角度的单位用六十进位制,电子计算机用的是二进制,旧式的称是十六进制的,计算一打数值时是12进制的.那么什么是进位制?不同的进位制之间又又什么联系呢?进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值。可使用数字符号的个数称为基数,基数为n,即可称n进位制,简称n进制。现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数。对于任何一个数,我们可以用不同的进位制来表示。比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,

3、它们所代表的数值都是一样的。一般地,若k是一个大于一的整数,那么以k为基数的k进制可以表示为:,而表示各种进位制数一般在数字右下脚加注来表示,如111001(2)表示二进制数,34(5)表示5进制数如:把二进制数110011(2)化为十进制数. 110011=1*25+1*24+0*23+0*22+1*21+1*20=32+16+2+1=51把八进制数化为十进制数. 例4、把二进制数110011(2)化为十进制数.解:110011=1*25+1*24+0*23+0*22+1*21+1*20=32+16+2+1=51例5 把89化为二进制数.解:根据二进制数满二进一的原则,可以用2连续去除89或

4、所得商,然后去余数.具体的计算方法如下:89=2*44+1 44=2*22+0 22=2*11+011=2*5+1 5=2*2+1所以:89=2*(2*(2*(2*(2*2+1)+1)+0)+0)+1=1*26+0*25+1*24+1*23+0*22+0*21+1*20=1011001(2)这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中的各步所得的余数从下到上排列即可得到89=1011001(2)上述方法也可以推广为把十进制化为k进制数的算法,这种算法成为除k取余法.例6 利用除k取余法把89转换为5进制数具体的计算方法如把十进制数化为二进制数。把k进制数a(共有n位)转换为十进

5、制数b的过程可以利用计算机程序来实现,语句为:INPUT a,k,n i=1 b=0WHILE i=n t=GET ai b=b+t*k(i-1) i=i+1WEND PRINT b END小结:(1)进位制的概念及表示方法(2)十进制与二进制之间转换的方法及程序(3) 图形计算器进一步激发学生在算法方面的潜能,更能体现他们的创造精神。13秦九韶算法与排序(两个课时)教学目标:1了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。 2掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,

6、理解计算机对数学的辅助作用。教学重点:秦九韶算法的特点及其程序设计,两种排序法的排序步骤及其程序设计教学难点:秦九韶算法的先进性理解及其程序设计,排序法的计算机程序设计教学过程 (秦九韶计算多项式的方法)例1、 设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序。个别学生提出一般的解决方案,如:x=5 y=2 * x5 5 * x4 4 * x3 + 3 * x2 6 * x + 7 PRINT“y=”;y END提问:例1计算时需要多少次乘法计算?多少次加法计算?有什么优缺点?(上述算法一共做了解15次乘法运算,5次加法运算,优点是简单、易懂。缺点

7、是不通用,不能解决任意多项式的求值问题,而且计算效率不高。)提问:计算x的幂时,可以利用前面的计算结果,以减少计算量,即先计算x2,然后依次计算x2.x,(x2.x).x, ((x2.x).x).x的值,这样计算上述多项式的值,一共需要多少次乘法,多少次加法?(上述算法一共做了解4次乘法运算,5次加法运算。)结论:第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率,而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法更快地得到结果。我们把多项式变形为:f(x)= 2x5-5x4-4x3+3x2-6x+7=(2x-5)x-4)x+3)x-6)x+7从

8、内到外,如果把每一个括号都看成一个常数,x的系数依次是什么?用图表可以表示为:多项式x系数2-5-43-67运算10251055402670+变形后x的系数25211085342677*5最后的系数2677即为所求的值,让学生描述上述计算过程。上述算法就是“秦九韶算法”。如何应用秦九韶算法完成一般的多项式f(x)=anxn+an-1xn-1+.+a1x+a0求值问题?f(x)=anxn+an-1xn-1+.+a1x+a0=( anxn-1+an-1xn-2+.+a1)x+a0 =( anxn-2+an-1xn-3+.+a2)x+a1)x+a0 =.=(.( anx+an-1)x+an-2)x+

9、.+a1)x+a0求多项式的值时,首先计算最内层括号内依次多项式的值,即v1=anx+an-1然后由内向外逐层计算一次多项式的值,即v2=v1x+an-2 v3=v2x+an-3 . vn=vn-1x+a0这样,把n次多项式的求值问题转化成求n个一次多项式的值的问题观察秦九韶算法的数学模型,计算vk时要用到vk-1的值,若令v0=an,我们可以得到下面的递推公式:v0=anvk=vk-1+an-k(k=1,2,n)这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现。例2、已知一个五次多项式f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8用秦九韶算法求当x=5时多项式的

10、值。分析:先画出程序框图(见课本)排序排序的算法很多,课本主要介绍里两种排序方法:直接插入排序和冒泡排序1、直接插入排序基本思想:插入排序的思想就是读一个,排一个。将第个数放入数组的第个元素中,以后读入的数与已存入数组的数进行比较,确定它在从大到小的排列中应处的位置将该位置以及以后的元素向后推移一个位置,将读入的新数填入空出的位置中(由于算法简单,可以举例说明)2、冒泡排序基本思想:依次比较相邻的两个数,把大的放前面,小的放后面.即首先比较第1个数和第2个数,大数放前,小数放后.然后比较第2个数和第3个数.直到比较最后两个数.第一趟结束,最小的一定沉到最后.重复上过程,仍从第1个数开始,到最后

11、第2个数. 由于在排序过程中总是大数往前,小数往后,相当气泡上升,所以叫冒泡排序. 例3、用冒泡法对数据7,5,3,9,1从小到大进行排序。小结(1)秦九韶算法计算多项式的值及程序设计(2)数字排序法中的常见的两种排序法直接插入排序法与冒泡排序法(3)冒泡法排序的计算机程序设计(4)注意循环语句的使用与算法的循环次数,对算法进行改进。13辗转相除法与更相减损术教学目标:1理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。 2基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。教学重点:理解辗转相除法与更相减损术求最大公约数的方法。教学难点:把辗转相除法与

12、更相减损术的方法转换成程序框图与程序语言。教学过程提出问题:在小学,我们已经学过求最大公约数的知识,如口算求出12与20的公约数。分析:我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。辗转相除法例1 求两个正数8251和6105的最大公约数。分析:8251与6105两数都比较大,而且没有明显的公约数,可以把它们都变小一点,根据已有的知识即可求出最大公约数8251610512146显然8251的最大公约数也必是2146的约数,同样6105与2

13、146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。6105214621813 21461813133318133335148 3331482371483740 则37为8251与6105的最大公约数。以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:(1):用较大的数m除以较小的数n得到一个商和一个余数;(2):若0,则n为m,n的最大公约数;若0,则用除数n除以余数得到一个商和一个余数;(3):若0,则为m,n的最大公约数;若0,则用除数除以余

14、数得到一个商和一个余数; 依次计算直至0,此时所得到的即为所求的最大公约数。更相减损术我国早期也有求最大公约数问题的算法,就是更相减损术。在九章算术中有更相减损术求最大公约数的步骤:可半者半之,不可半者,副置分母子之数,以少减多,更相减损,求其等也,以等数约之。翻译为:(1):任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。(2):以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。例2 用更相减损术求98与63的最大公约数.分析:(略) 辗转相除法与更相减损术的区别:(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到小结:对比分析辗转相除法与更相减损术求最大公约数的计算方法及完整算法程序。 共5页 第5页

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

当前位置:首页 > 幼儿园

Copyright@ 2020-2024 m.ketangku.com网站版权所有

黑ICP备2024021605号-1