福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3

上传人:san****019 文档编号:86415690 上传时间:2019-03-19 格式:PPT 页数:34 大小:803.50KB
返回 下载 相关 举报
福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3_第1页
第1页 / 共34页
福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3_第2页
第2页 / 共34页
福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3_第3页
第3页 / 共34页
福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3_第4页
第4页 / 共34页
福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3》由会员分享,可在线阅读,更多相关《福建省晋江市首峰中学高中数学 1.3算法案例课件 新人教a版必修3(34页珍藏版)》请在金锄头文库上搜索。

1、算 法 案 例,(第一课时),1、求两个正整数的最大公约数,(1)求25和35的最大公约数 (2)求225和135的最大公约数,2、求8251和6105的最大公约数,所以,25和35的最大公约数为5,所以,225和135的最大公约数为45,辗转相除法(欧几里得算法),观察用辗转相除法求8251和6105的最大公约数的过程,第一步 用两数中较大的数除以较小的数,求得商和余数 8251=61051+2146,结论: 8251和6105的公约数就是6105和2146的公约数,求8251和6105的最大公约数,只要求出6105和2146的公约数就可以了。,第二步 对6105和2146重复第一步的做法

2、6105=21462+1813 同理6105和2146的最大公约数也是2146和1813的最大公约数。,思考:从上述的过程你体会到了什么?,完整的过程,8251=61051+2146,6105=21462+1813,2146=18131+333,1813=3335+148,333=1482+37,148=374+0,例2 用辗转相除法求225和135的最大公约数,225=1351+90,135=901+45,90=452,显然37是148和37的最大公约数,也就是8251和6105的最大公约数,显然45是90和45的最大公约数,也就是225和135的最大公约数,思考1:从上面的两个例子可以看出

3、计算的规律是什么?,S1:用大数除以小数,S2:除数变成被除数,余数变成除数,S3:重复S1,直到余数为0,辗转相除法是一个反复执行直到余数等于0停止的步骤,这实际上是一个循环结构。,m = n q r,用程序框图表示出右边的过程,r=m MOD n,m = n,n = r,r=0?,是,否,思考2:辗转相除法中的关键步骤是哪种逻辑结构?,INPUT m , n DO r=m mod n m=n n=r LOOP UNTIL r=0 PRINT m End,九章算术更相减损术,算理:可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也,以等数约之。,第一步:任意给定两个正整数;

4、判断他们是否都是偶数。若是,则用2约简;若不是,则执行第二步。,第二步:以较大的数减较小的数,接着把所得的差与较小的数比较,并以大数减小数。继续这个操作,直到所得的减数和差相等为止,则这个等数或这个等数与约简的数的乘积就是所求的最大公约数。,例3 用更相减损术求 225 与 135 的最大公约数,解:由于两数不是偶数,把225和135以大数减小数, 并辗转相减,22513590 1359045 904545,所以,225和135的最大公约数等于45,INPUT a,b WHILE ab IF ab THEN a=a-b ELSE b=b-a END IF WEND PRINT a END,九章

5、算术更相减损术的算法程序语句:,练习: 用辗转相除法求 294 与84的最大公约数,再用更相减损术验证。,思考:求三个数:168,54,264的最大公约数。,算 法 案 例,(第二课时),计算多项式() =当x = 5的值,算法1:,() = =x xxx x x xx x x x x x x x 1,所以(5)=55555,=3125625125255,= 3906,算法2:,(5)=55555,=( (5 ) 5 ) 5 ) 5 ) 5 ,分析:两种算法中各用了几次乘法运算?和几次加法运算?,() = =(x+1)x+1)x+1)x+1)x+1,数书九章秦九韶算法,对该多项式按下面的方式进

6、行改写:,这样改写的目的是什么?,简化计算的次数(尤其是乘法的次数)。,对该多项式按下面的方式进行改写:,思考:当知道了x的值后该如何求多项式的值?,要求多项式的值,应该先算最内层的一次多项式的值,即,然后,由内到外逐层计算一次多项式的值,即,最后的一项是什么?,这种将求一个n次多项式f(x)的值转化成求n个一次多项式的值的方法,称为秦九韶算法。,思考:在求多项式的值上,这是怎样的一个转化?,例2 已知一个五次多项式为,用秦九韶算法求这个多项式当x = 5的值。,解:,将多项式变形:,按由里到外的顺序,依此计算一次多项式当x = 5时的值:,所以,当x = 5时,多项式的值等于17255.2,

7、你从中看到了怎样的规律?怎么用程序框图来描述呢?,练习:,2、已知多项式f(x)=2x7-5x5+4x3+x2-x-6 用秦九韶算法求这个多项式当x=2时的值。,INPUT “n=“;n INPUT “an=“;ai INPUT “x=“; x V=an i=n-1 DO PRINT “i=“;i INPUT “ai=“;ai v=v*x+ai i=i-1 LOOP UNTIL i0 PRINT v END,算法案例,(第三课时),一、进位制,1、什么是进位制?,2、最常见的进位制是什么?除此之外还有哪些常见的进位制?请举例说明,进位制是人们为了计数和运算方便 而约定的记数系统。,1、我们了解

8、十进制吗?所谓的十进制,它是如何构成的?,十进制由两个部分构成,例如:3721,其它进位制的数又是如何的呢?,第一、它有0、1、2、3、4、5、6、7、8、9十个数字;,第二、它有“权位”,即从右往左为个位、十位、百位、千位等等。,(用10个数字来记数,称基数为10),表示有:1个1,2个十, 7个百即7个10的平方, 3个千即3个10的立方,2、 二进制,二进制是用0、1两个数字来描述的。如11001等,()二进制的表示方法,区分的写法:11001(2)或者(11001)2,8进制呢?,如7342(8),k进制呢?,anan-1an-2a2a1(k)?,二、二进制与十进制的转换,1、二进制数

9、转化为十进制数,例1 将二进制数110011(2)化成十进制数,解:,根据进位制的定义可知,所以,110011(2)=51。,将(1)10303(4) ; (2)1234(5).化为十进制数,练习,将下面的二进制数化为十进制数?,(1)11,(2)101,(3)1101,(4)10101,例2 已知10b1(2)=a02(3),求数字a,b的值.,所以2b+9=9a+2,即9a-2b=7.,10b1(2)=123+b2+1=2b+9.,a02(3)=a32+2=9a+2.,故a=1,b=1.,将k进制数a转换为十进制数(共有 n位)的程序,a=anan-1 a3a2a1(k),=ank(n-1

10、)+an-1k(n-2)+ + a3k2 +a2k1+a1k0,b=a1k0,b=a2k1 +b,b=a3k2 + b,b=ankn-1 +b,ai=GET ai GET函数用于取出a的右数第i位数,i=i+1,i=1,b=aiki-1+b,INPUT “a,k,n=”;a,k,n b=0 i=0 t=a MOD 10 DO b=b+t*k(i-1) a=a10 t=a MOD 10 i=i+1 LOOP UNTIL in PRINT b END,2、十进制转换为二进制,(除2取余法:用2连续去除89或所得的商, 然后取余数),例2 把89化为二进制数,解:,根据“逢二进一”的原则,有,892

11、441, 2 (2220)+1, 2( 2( 2110)+0)+1, 2 (2 (2 (2 51)+0)+0)+1,5 2 21,2(2(2(2(221)1)0)0)1,89126025124123022021120,所以:89=1011001(2),2(2(2(2321)0)0)1,2(2(242220)0)1,2(2523+2200)1,2624+230021,892441,44 2220,22 2110,11 2 51, 2 (2 (2 (2 (2 21)+1)+0)+0)+1,所以892(2(2(2(2 2 1)1)0)0)1,2、十进制转换为二进制,例2 把89化为二进制数,5,2,

12、2,2,1,2,0,1,0,余数,11,22,48,89,2,2,2,2,0,1,1,0,1,注意: 1.最后一步商为0, 2.将上式各步所得的余数从下到上排列,得到:89=1011001(2),练习,将下面的十进制数化为二进制数?,(1)10,(2)20,(3)128,(4)256,例3 把89化为五进制数,3、十进制转换为其它进制,解:,根据除k取余法,以5作为除数,相应的除法算式为:,所以,89=324(5)。,设计一个程序,实现“除k取余法”,Input “a,k=”;a,k b=0 i=0 DO q=ak r=a MOD k b=b+r*10I i=i+1 a=q LOOP UNTIL q=0 PRINT b END,思考题: 如何将101(2) 化为五进制数?,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 初中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号