高中数学算法案例备课资料
高中数学 1.4《算法案例3》教案 苏教版必修3
![高中数学 1.4《算法案例3》教案 苏教版必修3](https://img.taocdn.com/s3/m/84c5c4af01f69e31423294a5.png)
算法案例(3)教学目标(1)二分法主要是采用了循环结构处理问题要会分析类似的问题;(2)GoTo 语句的认识及其他语句的进一步熟悉;(3)能由流程图分析出期所含有的结构并用为代码表示出相应的算法.教学重点二分法的算法思想和算法表示.教学过程一、问题情境必修1中我们学习了二分法求方程的近似解,大家还能想起二分法的求解步骤吗?二、案例讲解:案例:写出用区间二分法求解方程310x x --=在区间[1,1.5]内的一个近似解(误差不超过0.001)的一个算法.(1)算法设计思想:如图,如果估计出方程()0f x =在某区间[,]a b 内有一个根*x ,就能用二分法搜索求得符合误差限制c 的近似解.(2)算法步骤可以表示为:1S 取[,]a b 的中点02a b x +=,间区间一分为二; 2S 若0()0f x =,则0x 就是方程的根,否则判断根*x 在0x 的左侧还是后侧;若0()()0f a f x >,则*0(,)x x b ∈,以0x 代替a ;若0()()0f a f x <,则*0(,)x a x ∈,以0x 代替b ;3S 若||a b c -<,计算终止,此时*0x x ≈,否则转1S .(3)流程图:(4)伪代码1:R ea d a ,b ,c 02a b x +←While ||a b c -≥ And 30010x x --≠ If 3(1)a a --⨯300(1)x x --<0 Then0b x ←Else0a x ←End If02a b x +← End WhilePrint 0x伪代码2:10 Read ,,a b c20 0()2a b x +←30 3()1f a a a ←--40 3000()1f x x x ←-- 50 If 0()0f x = Then GoTo 12060 If 0()()0f a f x < Then70 0b x ←80 Else90 0a x ←100 End If110 If ||a b c -≥ Then GoTo 20120 Print 0x二分搜索的过程是一个多次重复的过程,故可以用循环结构来处理(代码1),课本解法是采用GoTo 语句实现的(代码2)。
人教课标版高中数学必修三《算法案例(第3课时)》教案(1)-新版
![人教课标版高中数学必修三《算法案例(第3课时)》教案(1)-新版](https://img.taocdn.com/s3/m/e70312c648649b6648d7c1c708a1284ac85005cd.png)
⼈教课标版⾼中数学必修三《算法案例(第3课时)》教案(1)-新版1.3 算法案例第3课时⼀、教学⽬标 1.核⼼素养在学习古代数学家解决数学问题的⽅法的过程中培养严谨的逻辑思维能⼒,在利⽤算法解决数学问题的过程中培养理性的精神和动⼿实践的能⼒. 2.学习⽬标(1)1.3.3.1理解进位制的概念,掌握各种进位制与⼗进制之间的转换规律.(2)1.3.3.2掌握⼗进位制转化为各种进位制的除k 余法. 3.学习重点各种进位制与⼗进制之间的转换规律. 4.学习难点不同进位制之间的转化规律及其思想⼆、教学设计(⼀)课前设计 1.预习任务任务1阅读教材P40-P45,思考:各种进位制与⼗进制之间转换的规律是什么?任务2你可以熟练的进⾏各进位制之间的转换吗? 2.预习⾃测1.在2进制中,0+0,0+1,1+0,1+1的值分别是多少?【解析】:分别是0,1,1,10 2.把⼆进制数()2110011化为⼗进制数【解析】:()=?+?+?+?+?+?=+++=543210211001112120202121232162151(⼆)课堂设计1.知识回顾(1)⽣活中常见的进位制有哪些(例如时间、钱等)(2)计算机中的2进制和通常的10进制怎么进⾏转换(3)⾮10的两种不同进制之间怎么进⾏转换 2.问题探究问题探究⼀认识进位制,将⼗进制数转化为k 进制数●活动⼀什么是n 进位制?我们常见的数字都是⼗进制的,但是并不是⽣活中的每⼀种数字都是⼗进制的.⽐如时间和⾓度的单位⽤六⼗进位制,电⼦计算机⽤的是⼆进制.那么什么是进位制?不同的进位制之间⼜⼜什么联系呢?进位制是⼀种记数⽅式,⽤有限的数字在不同的位置表⽰不同的数值.可使⽤数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制.现在最常⽤的是⼗进制,通常使⽤10个阿拉伯数字0-9进⾏记数.对于任何⼀个数,我们可以⽤不同的进位制来表⽰.⽐如:⼗进制数57,可以⽤⼆进制表⽰为111001,也可以⽤⼋进制表⽰为71、⽤⼗六进制表⽰为39,它们所代表的数值都是⼀样的.表⽰各种进位制数⼀般在数字右下脚加注来表⽰,如()2110011表⽰⼆进制数,(5)34表⽰5进制数.●活动⼆如何将10进制数转化为2进制数?解:根据⼆进制数满⼆进⼀的原则,可以⽤2连续去除89或所得商,然后去余数. 具体的计算⽅法如下:=?+=?+=?+=?+=?+892441442220222110112515221()(((())))=+++++=?+?+?+?+?+?+?=654321028922222211001120212120202121011001 这种算法叫做除2取余法,还可以⽤下⾯的除法算式表⽰:把上式中的各步所得的余数从下到上排列即可得到89=1011001(2)●活动三如何将10进制数转化为k进制数?上述⽅法可以推⼴为把⼗进制化为k进制数的算法,这种算法成为除k取余法. ⼗进制数化为k进制数(除k取余法)的步骤:1.除:把⼗进制数连续去除以k,直到商为0为⽌,同时将各步的余数写出2.取余:将各步所得的余数倒叙写出,即为所求的k进制数3.标基数:写出k进制数后将基数k⽤括号括起来标在右下⾓例1.将⼗进制数458分别转化为四进制数和六进制数.解:算式如下图,则458=13022(4)=2042(6)问题探究⼆不同进制数相互转换●活动⼀如何将10进制数与k进制数进⾏相互转换?⼆进制数110 011(2)化为⼗进制数是什么数?110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=32+16+2+1=51.那么如何将⼀个k进制数转换为⼗进制数?将k进制数a n a n-1…a1a0(k)化为⼗进制的⽅法:把k进制数a n a n-1…a1a0(k)写成各数位上的数字与基数k的幂的乘积之和的形式,然后计算出结果即为对应的⼗进制数.这样我们就可以进⾏10进制数与k进制数进⾏相互转换●活动⼆如何将⾮10的不同进制数进⾏相互转换?进制的数转化为10进制数后再把10进制的⼗进制是连接其他进制的桥梁.把k1进制数,各个进制数之间就能实现互相转换.数转化为k2例2.1 011 001(2)=______(10)=______(5).解:89,324 ⾸先将1011001(2) 化为⼗进制数为1×26+0+1×24+1×23+0+0+1×20=89,再将89化成五进制数:89除以5的商是17,余数为4,17除以5的商是3,余数为2,所以五进制数为324.3.课堂总结【知识梳理】(1)k进制化成⼗进制,幂积求和法(2)⼗进制化成k进制,除k取余法进制的数转化为10进制数后再把10进制的数转(3)不同进制之间转换:把k1化为k进制数2【重难点突破】(1)进位制之间的转换⽅法:k进制化成⼗进制,幂积求和法;⼗进制化成k 进制,除k取余法.(2)把⼀个⾮⼗进制数转化为另⼀种⾮⼗进制数,通常是把这个数先转化为⼗进制数,然后再利⽤除k取余法,把⼗进制数转化为k进制数.⽽在使⽤除k 取余法时要注意以下⼏点:1.必须除到所得的商是0为⽌;2.各步所得的余数必须从下到上排列;3.切记在所求数的右下⾓标明基数4.随堂检测1.下列各进制数中值最⼩的是( )A.85(9)B.210(6)C.1 000(4)D.111 111(2)【解析】:D 由进位制的知识易得,故选D.2.把189化为三进制数,则末位数是( )A.0 B.1 C.2 D.3【解析】:A将189除以3得余数为0,所以189化为三进制数的末位数为0. 故选A.3.已知⼀个k进制的数132与⼗进制的数30相等,那么k等于( )A.7或4 B.-7C.4 D.都不对【解析】:C132(k)=1×k2+3×k+2=k2+3k+2,∴k2+3k+2=30,即k2+3k-28=0,解得k=4或k=-7(舍去).故选C.4.四位⼆进制数能表⽰的最⼤⼗进制数是( )A.4 B.64 C.255 D.15【解析】:D由⼆进制数化为⼗进制数的过程可知,当四位⼆进制数为1 111时表⽰的⼗进制数最⼤,此时,1 111(2)=15.故选D5.七进制数中各个数位上的数字只能是______中的⼀个.【解析】:0、1、2、3、4、5、6“满⼏进⼀”就是⼏进制.∵是七进制.∴满七进⼀,根本不可能出现7或⽐7⼤的数字,所以各个数位上的数字只能是0、1、2、3、4、5、6中的⼀个.6.已知三个数12(16),25(7),33(4),将它们按由⼩到⼤的顺序排列为________.【解析】:33(4)<12(16)<25(7)将三个数都化为⼗进制数.12(16)=1×16+2=18,25(7)=2×7+5=19,33(4)=3×4+3=15,∴33(4)<12(16)<25(7).(三)课后作业基础型⾃主突破1.⼆进制数111.11(2)转换成⼗进制数是( )A.7.3 B.7.5 C.7.75 D.7.125【解析】:C 由题意知⼆进制对应的⼗进制是:1×22+1×21+1×20+1×2-1+1×2-2=4+2+1+0.5+0.25=7.75. 故选A2.将⼆进制110 101(2)转化为⼗进制为( )A.106 B.53 C.55 D.108【解析】:B110 101(2)=1+1×22+1×24+1×25=53. 故选B3.下列与⼆进制数1 001 101(2)相等的是( )A.115(8)B.113(8)C.114(8)D.116(8)【解析】:A 先化为⼗进制数:1 001 101(2)=1×26+1×23+1×22+1×20=77,再化为⼋进制数.所以77=115(8),1 001 101(2)=115(8)故选A.4.下列各数中,与1 010(4)相等的数是( )A.76(9)B.103(8)C.2 111(3)D.1 000 100(2)【解析】:D 1 010(4)=1×43+1×4=68.因为76(9)=7×9+6=69;103(8)=1×82+3=67;2111(3)=2×33+1×32+1×3+1=67;1000100(2)=1×26+1×22=68,所以1 010(4)=1 000 100(2)故选D..5.⼀个k进制的三位数与某六进制的⼆位数等值,则k不可能是( )A.3 B.4 C.5 D.7【解析】:D k进制的最⼩三位数为k2,六进制的最⼤⼆位数为5×6+5=35,由k2≤35得0…a1a0(k)表⽰⼀个k进制数,若21(k)=9,则321(k)在⼗进制中所表⽰的6.记anan-1数为( )A.86 B.57 C.34 D.17【解析】:B 由已知中21(k)=9,求出k值,进⽽利⽤累加权重法,可得答案.若21(k)=9,则2k+1=9,解得k=4,故321(k)=321(4)在+进制中所表⽰的数为:3×42+2×4+1=57. 故选B能⼒型师⽣共研7.已知1 0b1(2)=a02(3),求数字a,b的值.【解析】:a=1,b=1 ∵1 0b1(2)=1×23+b×2+1=2b+9,a02(3)=a×32+2=9a+2,∴2b+9=9a+2,即9a-2b=7.∵a∈{1,2},b∈{0,1},∴当a=1时,b=1符合题意,当a=2时,b=112不合题意,∴a=1,b=1.8.已知44(k)=36,把67(k)转化为⼗进制数为( )A.8 B.55 C.56 D.62【解析】:B 由题意得,36=4×k1+4×k0,所以k=8.则67(k)=67(8)=6×81+7×80=55. 故选B9.古时候,当边境有敌⼈来犯时,守边的官兵通过在烽⽕台上举⽕向国内报告,如图,烽⽕台上点⽕,表⽰数字1,不点⽕表⽰数字0,约定⼆进制数对应的⼗进制的单位是1 000,请你计算⼀下,这组烽⽕台表⽰约有多少敌⼈⼊侵?【解析】:27 000 由图可知从左到右的五个烽⽕台,表⽰⼆进制数的⾃左到右五个数位,依题意知这组烽⽕台表⽰的⼆进制数是11 011,改写为⼗进制为:11 011(2)=1×24+1×23+0×22+1×21+1×20=16+8+2+1=27(10).⼜27×1 000=27 000,所以这组烽⽕台表⽰边境约有27 000个敌⼈来犯.探究型多维突破10.分别⽤算法步骤、程序框图、程序语句表⽰把k进制数a(共有n位数)转化成⼗进制数b.【解析】:算法步骤:第⼀步,输⼊a,k,n的值.第⼆步,赋值b=0,i=1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成⽴.若是,则执⾏第五步;否则,返回第三步.第五步,输出b的值.程序框图:程序语句:11.若10y1(2)=x02(3),求数字x,y的值及与此两数等值的⼗进制数.【解析】:x=y=1,11∵10y1(2)=x02(3),∴1×23+0×22+y×2+1=x×32+0×3+2,将上式整理得9x-2y=7,由进位制的性质知,x∈{1,2},y∈{0,1},当y=0时,x=(舍),当y=1时,x=1.∴x=y=1,已知数为102(3)=1 011(2),与它们相等的⼗进制数为1×32+0×3+2=11.⾃助餐1.在什么进位制中,⼗进位制数71记为47( )A.17 B.16 C.8 D.12【解析】:B 设为k进制,有:4k+7=71,从⽽可解得k=16.因此是16进制.故选B.2.把⼗进制数20化为⼆进制数为( )A.10 000(2)B.10 100(2)C.11 001(2)D.10 001(2)【解析】:B 利⽤除2取余数可得.故选B3.在⼋进制中12(8)+7(8)=21(8),则12(8)×7(8)的值为( )A.104(8)B.106(8)C.70(8)D.74(8)【解析】:B 12(8)=1×81+2×80=10(10),7(8)=7×80=7(10),12(8)×7(8)=70(10).故70(10)=106(8).即12(8)×7(8)=106(8).故选B4.将四位⼋进制数中的最⼩数转化为六进制数为( )A.2 120 B.3 120 C.2 212 D.4 212【解析】:C 四位⼋进制中的最⼩数为1 000(8).所以1 000(8)=1×83=512.再将512除以6取余得512=2 212(6).故选C5.两个⼆进制数101(2)与110(2)的和⽤⼗进制数表⽰为( )A.12 B.11 C.10 D.9【解析】:B101(2)=1×22+0×21+1×20=5,110(2)=1×22+1×21+0×20=6,5+6=11.故选B6.在计算机的运⾏过程中,常常要进⾏⼆进制数与⼗进制数的转换与计算.如⼗进制数8转换成⼆进制数是1 000,记作8(10)=1 000(2);⼆进制数111转换成⼗请进制数是7,记作111(2)=7(10)等.⼆进制的四则运算,如11(2)+101(2)=1 000(2).计算:11(2)×111(2)=________,10 101(2)+1 111(2)=________.【解析】:10 101(2),100 100(2)由题可知,在⼆进制数中的运算规律是“满⼆进⼀”,∴11(2)×111(2)=10 101(2),10 101(2)+1 111(2)=100 100(2).7.1 101(2)+1 011(2)=__________(⽤⼆进制数表⽰).【解析】:11 000(2)1 101(2)=1×23+1×22+1=13;1 011(2)=1×23+1×2+1=11,则1101(2)+1011(2)=24.即24=11 000(2).。
高中数学之算法案例
![高中数学之算法案例](https://img.taocdn.com/s3/m/f48035be83c4bb4cf7ecd1b9.png)
算法案例(讲义)➢ 知识点睛典型算法举例: 1. 辗转相除法①方法概述:两数相除,较大数除以较小数,得商和余数,继而较小数除以余数,重复操作,直至除尽,此时除数即为最大公约数.②原理:在a =bq +r 中,除数b 和余数r 能被同一个数整除,那么被除数a 也能被这个数整除.或者说,除数与余数的最大公约数,就是被除数与除数的最大公约数. 2. 秦九韶算法把一个n 次多项式改写成如下形式:1110121102312101210()()(())((()))n n n n n n n n n n n n n n n f x a x a x a x a a x a x a x a a x a x a x a x a a x a x a x a x a ----------=++++=++++=+++++==+++++……………… 记0n v a =,11n n v a x a -=+,…,10n n v v x a -=+.求多项式的值时,首先计算最内层括号内一次多项式的值,即v 1,然后由内向外逐层计算. 3. 进位制①k 进制:若k 是一个大于1的整数,那么以k 为基数的k 进制数可以表示为一串数字连写在一起的形式.110()n n k a a a a -…11011000n n n n a a a a N a k a a a k --∈<<<≤(,,…,,,,,…,,)②进位制数相互转化:k 进制转十进制,计算k 进制数a 的右数第i 位数字i a 与1i k -的乘积1i i a k -⋅,再将其累加,重复操作求和.十进制数转k 进制数(除k 取余法): 如右图,十进制数化为二进制数, 89=1011001(2).➢ 精讲精练1. 用“辗转相除法”求下列数的最大公约数:(1)459和357的最大公约数是____________;余数2222222012511224489(2)三个数324243135,,的最大公约数是____________.2. 用秦九韶算法求多项式的值:(1)计算多项式x x x x x x x f 876543)(23456+++++=在1.0=x 时的值时,需要做乘法和加法的次数分别是_______,_______;(2)求多项式23456()1235879653f x x x x x x x =+-++++在x =-4的值时,4v 的值为_______;(3)计算多项式5432()853261f x x x x x x =+++++,当2x =时的值为________. 3. 完成下列进制的转化:(3)(10)10202____=; (10)__________(8)101=;1231(5)=_____________(7).4. 三位七进制的数表示的最大的十进制的数是( )A .322B .402C .342D .3655. 在下列各数中,最小的数是( )A .)9(85B .)6(210C .)4(1000D .(2)1111116. 已知三个数12(16),25(7),33(4),按照从小到大的顺序排列为________________.7. 已知()175r =(10)125,则r =________.8. 如图所示的程序框图的算法思路来源于我国古代数学名著《九章算术》中的“更相减损术”,执行该程序框图,若输入的a ,b 的值分别为14,18,则输出的a 的值为( ) A .0B .2C .4D .149. 如图所示的程序框图给出了利用秦九韶算法求多项式值的一个实例,若输入n ,x 的值分别为3,2,则输出v 的值为( ) A .35B .20C .18D .910.下面是把二进制数(2)11111化为十进制数的一个程序框图,判断框内应填入的条件是()A.5i>?B.4i≤?C.4i>?D.5i≤?11.执行如图所示的程序框图后,输出的值为4,则P的取值范围是()A.715816P<≤B.1516P>C.3748P<≤D.715816P<≤12.设a是一个各位数字都不是0且没有重复数字的三位数.将组成a的3个数字按从小到大排成的三位数记为I(a),按从大到小排成的三位数记为D(a)(例如a=815,则I(a)=158,D(a)=851).阅读如图所示的程序框图,运行相应的程序,任意输入一个a,输出的结果b=________.13. 已知函数232 1 01 012 1x x y x x x x x -<⎧⎪=+<⎨⎪+⎩≤≥()()(),写出求该函数的函数值的算法,并画出程序框图.14. 设计一算法,求使20063212222>++++n Λ成立的最小正整数n 的值.15.设计算法计算:1112131415167S=++++++,画出程序框图.【参考答案】1. (1)51;(2)272. (1)6;5;(2)220;(3)3813. 101 145 3624. C5. D6. (4)(16)(7)331225<<7. 88. B9. C 10. C 11. C 12. 495 13. 略 14. 略 15. 略算法案例(随堂测试)1. 372和684的最大公约数是( )A .36B .186C .12D .5892. 用秦九韶算法计算多项式65432()3567983512f x x x x x x x =+++-++在x =-4时的值时,v 2的值为( )A .-57B .-22C .34D .743. 1234(8)=________(10);300=________(5);300=_______(6).4. 设计一个算法,输入正整数n ,输出111123n++++….【参考答案】1. C2. C3. 668;2 200;1 2204. 略算法案例(习题)➢ 巩固练习5. 求下列数的最大公约数:(1)1 443与999的最大公约数是_____________;(2)319,377,116的最大公约数是___________.6. 用秦九韶算法求n 次多项式1110()n n n n f x a x a x a x a --=++++…,当x =x 0时,0()f x 需要算乘法、加法的次数分别为( ) A .n 2,nB .2n ,nC .n ,2nD .n ,n7.已知532=++++,运用秦九韶算法计算x=3时的值时,v3的值为()()231f x x x x xA.27 B.11 C.109 D.368.用秦九韶算法求多项式765432=++++++在x=3时的值为________.()765432f x x x x x x x x9.把21化为二进制数,则此数为()A.10011(2)B.10110(2)C.10101(2)D.11001(2)10.一个k进制的三位数与某六进制的二位数等值,则k不可能是()A.3 B.4 C.5 D.711.下列各数中,最小的数是()A.75B.210(6)C.111111(2)D.85(9)12.若a=33(10),b=52(6),c=11111(2),则三个数的大小关系是()A.c>b>a B.b>c>a C.c>a>b D.a>b>c13.中国古代有计算多项式值的秦九韶算法,如图是实现该算法的程序框图.执行该程序框图,若输入的x=2,n=2,依次输入的a为2,2,5,则输出的s=()A.7B.12C.17D.34第9题图第10题图14.如图是一个算法的程序框图,该算法所输出的结果是()A.11112310++++…B.11113519++++…C.111124620++++…D.231011112222++++…15.某程序框图如图所示,若输出的S=57,则判断框内为()A.k>4?B.k>5?C.k>6?D.k>7?11第11题图 第12题图16. 执行如图所示的程序框图,若输入k 的值为8,则判断框图可填入的条件是( )A .S ≤34?B .S ≤56?C .S ≤1112? D .S ≤1524?17. 设计一个算法,输入两个数,输出两个数中较大的一个.18.已知函数21111131x x y x x x x ⎧-<-⎪=+-⎨⎪+>≤≤()()(),试画出求函数值的程序框图.19. 对任意给定的正整数n ,写出一个求13+23+33+…+n 3的算法程序框图.20.设计算法求111112233499100++++⨯⨯⨯⨯…的值,要求画出程序框图.【参考答案】1.(1)111 (2)292.D3.D4.213245.C6.D7.C8.D9.C10.C11.A12.C13.略14.略15.略16.略12。
高中数学算法案例-进位制(公开课)教案 新人教A版必修3
![高中数学算法案例-进位制(公开课)教案 新人教A版必修3](https://img.taocdn.com/s3/m/adcf6ff14793daef5ef7ba0d4a7302768e996f36.png)
必修3第一章1.3算法案例:案例3进位制[教学目标]:(1)了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换。
(2)学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k 去余法,并理解其中的数学规律。
[教学重点]各进位制表示数的方法及各进位制之间的转换[教学难点]除k取余法的理解[情感态度价值观] 学生通过合作完成任务,领悟十进制,二进制的特点,了解计算机与二进制的联系,进一步认识到计算机与数学的联系,培养他们的合作精神和严谨的态度。
[教学方法] 讲解法、尝试法、归纳法、讨论法、[教学用具]多媒体电脑[学法] 学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法。
[教学过程]一、创设情景,揭示课题辗转相除法和更相减损术,是求两个正整数的最大公约数的算法,秦九韶算法是求多项式的值的算法,将这些算法转化为程序,就可以由计算机来完成相关运算。
人们为了计数和运算方便,约定了各种进位制,本节课我们来共同学习《进位制》你都了解那些进位制?比如说?在日常生活中,我们最熟悉、最常用的是十进位制,据说这与古人曾以手指计数有关;由于计算机的计算与记忆元件特点,计算机上通用的是二进位制;一周七天是七进位;一年十二个月〔生肖、一打〕是十二进制;旧式的称是十六进制;〔老称一斤为16两,故而有了半斤八两之说〕、24进制〔节气〕一小时六十分、角度的单位是六十进位制。
二进制是有德国数学家莱布尼兹发明的。
第一台计算机ENIAC〔埃尼阿克〕用的就是十进制。
计算机之父冯·诺伊曼研究后,提出改进意见,用二进制替代十进制。
主要原因①二进制只有0和1两个数字,要得到两种不同稳定状态的电子器件很容易,而且制造简单,可靠性高;②各种计数法中,二进制运算规那么简单。
如:十进 制乘法叫九九表,二进制只有4句。
高中数学 1.3算法案例精品教案 新人教A版必修3
![高中数学 1.3算法案例精品教案 新人教A版必修3](https://img.taocdn.com/s3/m/fac79e537fd5360cba1adb8c.png)
1.3算法案例第三、四课时 秦九韶算法与排序(1)教学目标(a )知识与技能1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。
2.掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用。
(b )过程与方法模仿秦九韶计算方法,体会古人计算构思的巧妙。
能根据排序法中的直接插入排序法与冒泡排序法的步骤,了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用。
(c )情态与价值通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化历史的悠久。
通过对排序法的学习,领会数学计算与计算机计算的区别,充分认识信息技术对数学的促进。
(2)教学重难点重点:1.秦九韶算法的特点2.两种排序法的排序步骤及计算机程序设计难点:1.秦九韶算法的先进性理解2.排序法的计算机程序设计(3)学法与教学用具学法:1.探究秦九韶算法对比一般计算方法中计算次数的改变,体会科学的计算。
2.模仿排序法中数字排序的步骤,理解计算机计算的一般步骤,领会数学计算在计算机上实施的要求。
教学用具:电脑,计算器,图形计算器(4)教学设想(一)创设情景,揭示课题我们已经学过了多项式的计算,下面我们计算一下多项式1)(2345+++++=x x x x x x f 当5=x 时的值,并统计所做的计算的种类及计算次数。
根据我们的计算统计可以得出我们共需要10次乘法运算,5次加法运算。
我们把多项式变形为:1)))1(1(1()(2+++++=x x x x x x f 再统计一下计算当5=x 时的值时需要的计算次数,可以得出仅需4次乘法和5次加法运算即可得出结果。
显然少了6次乘法运算。
这种算法就叫秦九韶算法。
(二)研探新知1.秦九韶计算多项式的方法01210123120132211012211)))((())(()()(a a x a x a x a a x a x a x a x a a x a x a x a x a a x a x a x a x a x f n n n n n n n n n n n n n n n n n n n +++++==+++++=+++++=+++++=--------------例1 已知一个5次多项式为8.07.16.25.325)(2345-+-++=x x x x x x f 用秦九韶算法求这个多项式当5=x 时的值。
高中数学必修三教案-算法案例
![高中数学必修三教案-算法案例](https://img.taocdn.com/s3/m/0d12ec1f915f804d2a16c10d.png)
教学目标:1.理解不定方程的算法中蕴含的数学原理,并能根据这些原理进行2.理解不定方程的算法的方法与步骤.3.能根据算法语句与伪代码语句的知识设计完整的流程图并写出伪代码语句算法程序.4.使学生初步掌握不定方程的算法设计和列举法的基本思想.教学方法:1.通过讲解中国古代的一个有趣的故事的方法引入新知识,可以使学生容易接受,易于激发学生的求知欲.2.教学中利用探索性教学法,可以加深学生对不定方程的算法的理解,有利于培养学生的理性思维和实践能力.3.通过本节课的学习,使学生进一步体会观察、比较、归纳、分析等一般科学方法的运用.教学过程:一、问题情境情境:韩信是秦末汉初的著名军事家.据说有一次汉高祖刘邦在卫士的簇拥下来到练兵场,刘邦问韩信有什么方法,不要逐个报数,就能知道场上的士兵的人数.韩信先令士兵排成3列纵队,结果有2个人多余;接着立即下令将队形改为5列纵队,这一改,又多出3人;随后他又下令改为7列纵队,这次又剩下2人无法成整行.二、学生活动1.同学们想一想,韩信是如何得出正确的人数的?2.类似的问题最早出现在我国的《算经十书》之一的《孙子算经》中原文是:“今有物,不知其数,三三数之,剩二,五五数之,剩三,七七数之,剩二,问物几何?答曰:「二十三」”3.孙子算经的作者及确实着作年代均不可考,不过根据考证,着作年代不会在晋朝之後,以这个考证来说上面这种问题的解法,中国人发现得比西方早,所以这个问题的推广及其解法,被称为中国剩余定理.中国剩余定理(Chinese Remainder Theorem )在近代抽象代数学中占有一席非常重要的地位;4.该问题的完整的表述,后来经过宋朝数学家秦九韶的推广,又发现了一种算法,叫做“大衍求一术”.在中国还流传着这么一首歌诀:三人同行七十稀,五树梅花廿一枝, 七子团圆月正半, 除百零五便得知. 它的意思是说:将某数(正整数)除以3所得的余数乘以70,除以5所得的余数乘以21,除以7所得的余数乘以15,再将所得的三个积相加,并逐次减去105,减到差小于105为止. 所得结果就是某数的最小正整数值.用上面的歌诀来算《孙子算经》中的问题,便得到算式:2×70+3×21+2×15=233,233-105×2=23,即所求物品最少是23件.三、建构教学 “孙子问题”相当于求关于,,x y z 的不定方程组的325372m x m y m z =+⎧⎪=+⎨⎪=+⎩的正整数解;设所求的数为m ,根据题意m 应该同时满足下列三个条件:①m 被3除后余2,即mod(,3)2m =;②m 被5除后余3,即mod(,5)3m =;③m 被7除后余2,即mod(,7)2m =;用自然语言可以将算法写为:1S 1m ←2S 1m m ←+3S 如果mod(,3)2m =且mod(,5)3m =且mod(,7)2m =则执行4S ,否则执行2S ;4S 输出m伪代码:1m ←DO1m m ←+Loop Until mod(,3)2m =且mod(,5)3m =且mod(,7)2m =Print m流程图为:四、数学运用例题 有3个连续的自然数,其中最小的能被15整除,中间的能被17整除,最大的能被19整除,求满足要求的一组三个连续的自然数.伪代码:思考:以下伪代码是否可行? ka kWhile Mod(a +1,17)≠0 orMod(a +2,19)≠0 k k +1a kEnd WhilePrint a ,a +1,a +2五、要点归纳与方法小结本节课学习了以下内容:1.中国数学在世界数学史上的巨大贡献;2.实际问题的分析和解决问题过程;3.算法的表示及语句的运用.。
高中数学算法案例(全套)教案苏教版必修3
![高中数学算法案例(全套)教案苏教版必修3](https://img.taocdn.com/s3/m/90cae10b561252d380eb6e81.png)
§1.4 算法案例(1)教学目标:(1)介绍中国古代算法的案例-韩信点兵-孙子问题;(2)用三种方法熟练的表示一个算法;(3)让学生感受算法的意义和价值.教学重点、难点:不定方程解法的算法.教学过程:一、问题情境(韩信点兵-孙子问题):韩信是秦末汉初的著名军事家。
据说有一次汉高祖刘邦在卫士的簇拥下来到练兵场,刘邦问韩信有什么方法,不要逐个报数,就能知道场上的士兵的人数。
韩信先令士兵排成3列纵队,结果有2个人多余;接着立即下令将队形改为5列纵队,这一改,又多出3人;随后他又下令改为7列纵队,这次又剩下2人无法成整行。
在场的人都哈哈大笑,以为韩信不能清点出准确的人数,不料笑声刚落,韩信高声报告共有士兵2333人。
众人听了一愣,不知道韩信用什么方法这么快就能得出正确的结果的。
同学们,你知道吗?背景说明:1.类似的问题最早出现在我国的《算经十书》之一的《孙子算经》中原文是:“今有物,不知其数,三三数之,剩二,五五数之,剩三,七七数之,剩二,问物几何?答曰:「二十三」”2.孙子算经的作者及确实着作年代均不可考,不过根据考证,着作年代不会在晋朝之後,以这个考证来说上面这种问题的解法,中国人发现得比西方早,所以这个问题的推广及其解法,被称为中国剩余定理(孙子定理)。
中国剩余定理在近代抽象代数学中占有一席非常重要的地位;3.该问题的完整的表述,后来经过宋朝数学家秦九韶的推广,又发现了一种算法,叫做“大衍求一术”。
在中国还流传着这么一首歌诀:三人同行七十稀,五树梅花廿一枝,七子团圆月正半,除百零五便得知。
它的意思是说:将某数(正整数)除以3所得的余数乘以70,除以5所得的余数乘以21,除以7所得的余数乘以15,再将所得的三个积相加,并逐次减去105,减到差小于105为止。
所得结果就是某数的最小正整数值。
用上面的歌诀来算《孙子算经》中的问题,便得到算式:2×70+3×21+2×15=233,233-105×2=23,即所求物品最少是23件。
高中数学算法案例教案
![高中数学算法案例教案](https://img.taocdn.com/s3/m/c840d4935122aaea998fcc22bcd126fff6055d6e.png)
高中数学算法案例教案
课题:排序算法——冒泡排序
教学目标:
1.了解冒泡排序算法的基本原理及实现过程。
2.掌握冒泡排序算法在实际应用中的应用场景。
3.能够通过编程实现冒泡排序算法。
4.培养学生的逻辑思维能力和编程实践能力。
教学过程:
一、导入新知识(5分钟)
向学生介绍冒泡排序算法的基本原理及实现过程,通过示例演示冒泡排序的排序过程。
二、理论学习(15分钟)
1.讲解冒泡排序算法的原理:比较相邻的元素,如果前一个比后一个大,则交换两个元素
的位置。
2.详细讲解冒泡排序的实现过程,并通过示例展示冒泡排序的排序过程。
三、算法分析(15分钟)
与学生一起分析冒泡排序算法的时间复杂度,引导学生思考如何优化冒泡排序算法的性能。
四、实际操作(20分钟)
1.让学生通过编程实现冒泡排序算法,并让他们自行编写测试用例进行验证。
2.引导学生思考如何改进冒泡排序算法,提高其效率。
五、应用拓展(10分钟)
探讨冒泡排序算法在实际应用中的场景,并引导学生思考如何在实际问题中应用冒泡排序
算法。
六、总结归纳(5分钟)
回顾本节课的主要内容,强调冒泡排序算法的重要性和应用价值。
七、作业布置(5分钟)
布置任务:要求学生练习编写冒泡排序算法,并结合实际问题进行应用。
教学反思:
通过本堂课的教学,学生对冒泡排序算法有了更深刻的理解,通过实际操作提高了他们的编程实践能力,培养了他们的逻辑思维能力。
在未来的教学中,需要更加注重培养学生的实践能力和创新能力,引导学生将所学知识应用到实际问题中。
高中数学北师大版必修三《第二章算法初步算法案例分析》课件
![高中数学北师大版必修三《第二章算法初步算法案例分析》课件](https://img.taocdn.com/s3/m/483e67157ed5360cba1aa8114431b90d6d858955.png)
消元和加减消元两种消元的方法,下面用加减消元法写出它
的求解过程.
解:第一步:② - ①×2,得: 5y=3; ③
第二步:解③得
代入①,得
x1 5
y 3 5
;
第三步:将
y 3 5
.
学生探究:对于一般的二元一次方程组来说,上述步骤应该
怎样进一步完善?
老师评析:本题的算法是由加减消元法求解的,这个算法
也合适一般的二元一次方程组的解法。
参与者:800元 主持人:高了 参与者:400元
1、首次报价 2、根据主持人的回答确
主持人:低了
定价格区间
参与者:600元 主持人:低了 接下来,你会怎么猜?
3、没猜中,选中点继续 直至猜中为止。
3
例1:解二元一次方程组:
x 2 2x
y y
1 1
① ②
分析:解二元一次方程组的主要思想是消元的思想,有代入
3.2
算法案例分析
北师大版 高中数学
教学内容:算法的基本内容 教学目标:通过对具体实例的解决过程与
步骤的分析,体会算法的思 想,了解算法的含义 教学重难点:1、算法的思想和含义 2、了解算法的具体过程
2
引例:《荣幸52》中的一个环节 - 猜价格
主持人出示一台价值在1000元内的随身
听,进行竟猜
过程:
4
对于一般的二元一次方程组
a1x b1 y c1 a2 x b2 y c2
其中 a1b2 a2b1 0 也可以按照上述步骤求解.
练习:写出一元二次方程2x2 3x 4 0 的求解过程。
5
例2:给定素数表,设计算法,将936分解成质 因数的乘积。
判断936是否为素数 否 确定936的最小素因数 2 936=468 ×2
高中数学算法案例教案word
![高中数学算法案例教案word](https://img.taocdn.com/s3/m/0f52cc8b6e1aff00bed5b9f3f90f76c661374cc1.png)
高中数学算法案例教案word
课题:基础算法-二分查找
教学目标:
1. 了解二分查找算法的原理和实现方法
2. 能够利用二分查找算法解决实际问题
3. 培养学生的逻辑思维和问题解决能力
教学重点:
1. 二分查找算法的原理和实现方法
2. 分析问题,应用二分查找算法解决实际问题
教学难点:
1. 理解二分查找算法的原理
2. 熟练利用二分查找算法解决实际问题
教学准备:
1. 讲义、课件
2. 编程环境
教学流程:
一、导入新课(5分钟)
教师引导学生思考:在一个有序数组中查找某个特定的元素,有什么高效的方法?学生讨论后,引出二分查找算法。
二、讲解二分查找算法(20分钟)
1. 介绍二分查找算法的原理和实现步骤
2. 演示如何编写二分查找算法的代码
三、案例讲解(15分钟)
1. 分析一个实际问题:如何利用二分查找算法在一个有序数组中查找某个元素的位置
2. 演示如何利用二分查找算法实现该问题的解决方法
四、练习与讨论(15分钟)
1. 让学生自行编写二分查找算法解决其他实际问题
2. 学生相互讨论并交流解决方法
五、总结与应用(5分钟)
1. 总结二分查找算法的特点和适用范围
2. 引导学生思考如何将二分查找算法运用到其他问题中去
六、作业布置(5分钟)
布置练习题,让学生练习更多的二分查找算法问题,并摘录出其中的难点和疑惑,下节课一并讨论。
教学反思:
通过本节课的学习,学生对二分查找算法有了更深入的理解,同时也培养了他们的编程思维和解决问题的能力。
下节课将继续探讨更复杂的算法案例,提高学生的应用能力和创新能力。
人教版高中数学必修三 算法案例(进位制)优质教案
![人教版高中数学必修三 算法案例(进位制)优质教案](https://img.taocdn.com/s3/m/7b0f1cd665ce0508763213d2.png)
第3课时案例3 进位制(一)导入新课情境导入在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.(二)推进新课、新知探究、提出问题(1)你都了解哪些进位制?(2)举出常见的进位制.(3)思考非十进制数转换为十进制数的转化方法.(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路.讨论结果:(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.(3)十进制使用0~9十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位……例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:3 721=3×103+7×102+2×101+1×100.与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用0~6七个数字.一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式a n a n-1…a1a0(k)(0<a n<k,0≤a n-1,…,a1,a0<k).其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20,7 342(8)=7×83+3×82+4×81+2×80.非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:a n a n-1…a1a0(k)=a n×k n+a n-1×k n-1+…+a1×k+a0.第一步:从左到右依次取出k进制数a n a n-1…a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即a n×k n,a n-1×k n-1,…,a1×k,a0×k0;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.1°十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.2°非十进制之间的转换一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.(三)应用示例思路1例1 把二进制数110 011(2)化为十进制数.解:110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=1×32+1×16+1×2+1=51.点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.变式训练设计一个算法,把k进制数a(共有n位)化为十进制数b.算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字a i与k i-1的乘积a i·k i-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法.算法步骤如下:第一步,输入a,k和n的值.第二步,将b的值初始化为0,i的值初始化为1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.第五步,输出b的值.程序框图如下图:程序:INPUT “a,k,n=”;a,k,nb=0i=1t=a MOD 10DOb=b+t*k^(i-1)a=a\\10t=a MOD 10i=i+1LOOP UNTIL i>nPRINT bEND例2 把89化为二进制数.解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:因为89=2×44+1,44=2×22+0,22=2×11+0,11=2×5+1,5=2×2+1,2=2×1+0,1=2×0+1,所以89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1=2×(2×(2×(2×(22+1)+1)+0)+0)+1=…=1×26+0×25+1×24+1×23+0×22+0×21+1×20=1 011 001(2).这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.变式训练设计一个程序,实现“除k取余法”.算法分析:从例2的计算过程可以看出如下的规律:若十制数a除以k所得商是q0,余数是r0,即a=k·q0+r0,则r0是a的k进制数的右数第1位数.若q0除以k所得的商是q1,余数是r1,即q0=k·q1+r1,则r1是a的k进制数的左数第2位数.……若q n-1除以k所得的商是0,余数是r n,即q n-1=r n,则r n是a的k进制数的左数第1位数.这样,我们可以得到算法步骤如下:第一步,给定十进制正整数a和转化后的数的基数k.第二步,求出a除以k所得的商q,余数r.第三步,把得到的余数依次从右到左排列.第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数.程序框图如下图:程序:INPUT “a,k=”;a,kb=0i=0DOq=a\\kr=a MOD kb=b+r*10^ii=i+1a=qLOOP UNTIL q=0PRINT bEND思路2例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.解:314 706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104 902.所以,化为十进制数是104 902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.例2 把十进制数89化为三进制数,并写出程序语句.解:具体的计算方法如下:89=3×29+2,29=3×9+2,9=3×3+0,3=3×1+0,1=3×0+1,所以:89(10)=10 022(3).点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.(四)知能训练将十进制数34转化为二进制数.分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求.解:即34(10)=100 010(2)(五)拓展提升把1 234(5)分别转化为十进制数和八进制数.解:1 234(5)=1×53+2×52+3×5+4=194.则1 234(5)=302(8)所以,1 234(5)=194=302(8)点评:本题主要考查进位制以及不同进位制数的互化.五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化.(六)课堂小结(1)理解算法与进位制的关系.(2)熟练掌握各种进位制之间转化.(七)作业习题1.3A组3、4.。
高中数学人教A版必修3第一章1.3算法案例课件
![高中数学人教A版必修3第一章1.3算法案例课件](https://img.taocdn.com/s3/m/66ef2b32f11dc281e53a580216fc700abb6852c8.png)
去
9- 3= 6
6 - 3 = 3 减数与差相等
3×2=6
78与36的最大公约数为6.
更相减损术
问题6.根据更相减损术的过程,设计求两个正整数m,n最 大公约数的算法,需要用到什么逻辑结构?为什么?
第一步:任意给定两个正整 算法分析:
数,判断它们是否都是偶数。第一步,给定两个正整数m,n(m>n).
更相减损术
例2. 用更相减损术求78与36的最大公约数.
解: 78与36都是偶数
“可半”
78 ÷ 2 = 39 36 ÷ 2 = 18
“可半者半之”
除 完
39 - 18 = 21 大减小 21 - 18 = 3
再
18 - 3 = 15
乘
15 - 3 = 12
“更相减损”(辗转相减)
回
12 - 3 = 9
2 18 30 3 9 15 35
18与30的最大公约数为2 3 6 .
问题1. 求8251与6105的最大公约数. 可以使用短除法吗?
困难:两数比较大、公约数不易视察。 (辗转相除法、更相减损术)
知问
思考1:辗转相除法与更相减损术可以用来解 决什么问题? 可以解决求两个正整数最大公约数的任何问题。
《九章算术》——更相减损术
“可半者半之,不可半者,副置分母、子之数,以少 减多,更相减损,求其等也,以等数约之。”
《九章算术》
刘徽
《九章算术》其作者已不可 考,现今流传的大多是在三 国时期刘徽为《九章》所作 的注本。它是中国古代第一 部数学专著,系统总结了战 国、秦、汉时期的数学成绩, 收录了246个数学问题及其 解法,是当时世界上最简练 有效的应用数学,它的出现 标志中国古代数学形成了完 整的体系。
高中数学(人教版A版必修三)配套课件:1.3算法案例(一)
![高中数学(人教版A版必修三)配套课件:1.3算法案例(一)](https://img.taocdn.com/s3/m/5beb1583fd0a79563c1e7264.png)
1 2345
2.关于利用更相减损术求156和72的最大公约数,下列说法正确的是( B ) A.都是偶数必须约简 B.可以约简,也可以不约简 C.第一步作差为156-72=84,第二步作差为72-84=-12 D.以上皆不正确
答案
1 2345
3.用辗转相除法求210与98的最大公约数需作除法的次数为( B )
A.1
B.2
C.3
D.4
答案
4.用更相减损术求147和42的最大公约数是( C )
A.6
B.7
C.21
D.42
1 2345
答案
1 2345
5.用秦九韶算法计算多项式f(x)=6x6+5x5+4x4+3x3+2x2+x+7在x=0.4
时的值时,需做加法和乘法的次数的和为( C )
A.10
B.9
C.12
答案
知识点二 求n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0的值的算法 思考 衡量一个算法是否优秀的重要参数是速度.把多项式f(x)=x5+x4+ x3+x2+x+1变形为f(x)=((((x+1)x+1)x+1)x+1)x+1,然后求当x=5时 的值,为什么比常规逐项计算省时? 答案 从里往外计算,充分利用已有成果,可减少重复计算. 秦九韶算法的一般步骤: 把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0改写成如下形式: (…((anx+an-1)x+an-2)x+…+a1)x+a0,求多项式的值时,首先计算 最内层括号内 一次多项式的值,即v1= anx+an-1 ,然后由内向外逐层计 算一次多项式的值,即
解 f(x)=((((((7x+6)x+5)x+4)x+3)x+2)x+1)x,
所以有v0=7, v1=7×3+6=27, v2=27×3+5=86, v3=86×3+4=262, v4=262×3+3=789, v5=789×3+2=2 369, v6=2 369×3+1=7 108, v7=7 108×3=21 324. 故当x=3时,多项式f(x)=7x7+6x6+5x5+4x4+3x3+2x2+x的值为21 324.
高中数学算法案例课件2 新课标 人教 必修3(A)
![高中数学算法案例课件2 新课标 人教 必修3(A)](https://img.taocdn.com/s3/m/3d08c76d3d1ec5da50e2524de518964bcf84d26f.png)
2.更相减损术
例2 用更相减损术求 98 与 63 的 最大公约数.
98-63=35 63-35=28 35-28=7 28-7=21 21-7=14 14-7=7
所以, 98 和 63 的最大公约数等于7.
(3)“;a,b DO
r=a MOD b a=b b=r LOOP UNTIL r=0 PRINT a END
开始
输入a,b r=a MOD b
a=b
b=r 否
r=0? 是
输出a 结束
2、更相减损术
(1)算理:所谓更相减损术,就是对于给定 的两个数,用较大的数减去较小的数,然后 将差和较小的数构成新的一对数,再用较大 的数减去较小的数,反复执行此步骤直到差 数和较小的数相等,此时相等的两数便为原 来两个数的最大公约数。
算法案例
案例1、辗转相除法与更相减损术
1、辗转相除法(欧几里得算法)
(1)算理:所谓辗转相除法,就是对于给定 的两个数,用较大的数除以较小的数。若余 数不为零,则将余数和较小的数构成新的一 对数,继续上面的除法,直到大数被小数除 尽,则这时较小的数就是原来两个数的最大 公约数。
(2)算法步骤
第一步:输入两个正整数a,b(a>b); 第二步:把a/b的余数赋给r; 第三步:如果r0, 那么把b赋给a,把r赋给b,转 到第二步;否则转到第四步; 第四步:输出最大公约数b.
(2)算法步骤
第一步:输入两个正整数a,b(a>b); 第二步:若a不等于b ,则执行第三步;否则转 到第五步; 第三步:把a-b的差赋予r; 第四步:如果b>r, 那么把b赋给a,把r赋给b;否 则把r赋给a,执行第二步; 第五步:输出最大公约数b.
例1、用更相减损术求98和63的最大公约数。
高中数学 第一章《算法案例》教案1 新人教A版必修3
![高中数学 第一章《算法案例》教案1 新人教A版必修3](https://img.taocdn.com/s3/m/a911ef3d8e9951e79b8927ab.png)
1.3算法案例第一、二课时辗转相除法与更相减损术(1)教学目标(a)知识与技能1.理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。
2.基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。
(b)过程与方法在辗转相除法与更相减损术求最大公约数的学习过程中对比我们常见的约分求公因式的方法,比较它们在算法上的区别,并从程序的学习中体会数学的严谨,领会数学算法计算机处理的结合方式,初步掌握把数学算法转化成计算机语言的一般步骤。
(c)情态与价值1.通过阅读中国古代数学中的算法案例,体会中国古代数学对世界数学发展的贡献。
2.在学习古代数学家解决数学问题的方法的过程中培养严谨的逻辑思维能力,在利用算法解决数学问题的过程中培养理性的精神和动手实践的能力。
(2)教学重难点重点:理解辗转相除法与更相减损术求最大公约数的方法。
难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言。
(3)学法与教学用具学法:在理解最大公约数的基础上去发现辗转相除法与更相减损术中的数学规律,并能模仿已经学过的程序框图与算法语句设计出辗转相除法与更相减损术的程序框图与算法程序。
教学用具:电脑,计算器,图形计算器(4)教学设想(一)创设情景,揭示课题1.教师首先提出问题:在初中,我们已经学过求最大公约数的知识,你能求出18与30的公约数吗?2.接着教师进一步提出问题,我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。
(二)研探新知1.辗转相除法例1 求两个正数8251和6105的最大公约数。
(分析:8251与6105两数都比较大,而且没有明显的公约数,如能把它们都变小一点,根据已有的知识即可求出最大公约数)解:8251=6105×1+2146显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法案例备课资料
例题解析
【例1】输入两个正整数a和b(a>b),求它们的最大公约数.
解析:求两个正整数a、b(a>b)的最大公约数,可以归结为求一数列:
a,b,r1,r2,…,r n-1,r n,r n+1,0
此数列的首项与第二项是a和b,从第三项开始的各项,分别是前两项相除所得的余数,如果余数为0,它的前项r n+1即是a和b的最大公约数,这种方法叫做欧几里得辗转相除法,其算法如下:
S1输入a,b(a>b);
S2求a/b的余数r;
S3如果r≠0,则将b→a,r→b,再次求a/b的余数r,转至S2;
S4输出最大公约数b.
伪代码如下:
10Read a,b
20r←mod(a,b)
30If r=0then Goto 80
40Else
50a←b
60b←r
70Goto 20
80Print b
流程图如下:
点评:算法的多样性:对于同一个问题,可以有不同的算法.例如求1+2+3+...+100的和,可以采用如下方法:先求1+2,再加3,再加4,一直加到100,最后得到结果5050.也可以采用这样的方法:1+2+3+ (100)
(1+100)+(2+99)+(3+98)+…+(50+51)=50×101=5050.显然,对于算法来说,后一种方法更简便,而循环累加更适用于计算机解题.因此,为了有效地进行解题,不仅要保证算法正确,还要选择好的算法,即方法简单、运算步骤少,能迅速得出正确结果的算法.
【例2】求1734,816,1343的最大公约数.
分析:三个数的最大公约数分别是每个数的约数,因此也是任意两个数的最大公约数的约数,也就是说三个数的最大公约数是其中任意两个数的最大公约数与第三个数的最大公约数.
解:用“辗转相除法”.
先求1734和816的最大公约数,
1734=816×2+102;
816=102×8;
所以1734与816的最大公约数为102.
再求102与1343的最大公约数,
1343=102×13+17;
102=17×6.
所以1343与102的最大公约数为17,即1734,816,1343的最大公约数为17.
【例3】猴子吃桃问题:有一堆桃子不知数目,猴子第一天吃掉一半,觉得不过瘾,又多吃了一只,第二天照此办法,吃掉剩下桃子的一半另加一个,天天如此,到第十天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少个?
解析:此题粗看起来有些无从着手的感觉,那么怎样开始呢?假设第一天开始时有a1只桃子,第二天有a2只……第9天有a9只,第10天有a10只.在a1,a2,…,a10中,只有a10=1是知道的,现要求a1,而我们可以看出a1,a2,…,a10之间存在一个简单的关系:
a9=2×(a10+1),
a8=2×(a9+1),
a1=2×(a2+1).
也就是:a i=2×(a i+1+1)i=9,8,7,6, (1)
这就是此题的数学模型.
再考察上面从a9,a8直至a1的计算过程,这其实是一个递推过程,这种递推的方法在计算机解题中经常用到.另一方面,这九步运算从形式上完全一样,不同的只是a i的下标而已.由此,我们引入循环的处理方法,并统一用a0表示前一天的桃子数,a1表示后一天的桃子数,将算法改写如下:
S1a1←1;{第10天的桃子数,a1的初值}
S2i←9;{计数器初值为9}
S3a0←2×(a1+1);{计算当天的桃子数}
S4a1←a0;{将当天的桃子数作为下一次计算的初值}
S5i←i-1;
S6若i≥1,转S3;
S7输出a0的值;
伪代码如下:
10a1←1
20i←9
30a0←2×(a1+1)
40a1←a0.
50i←i-1
60If i≥1 then Goto 30
70Else
80Print a0
流程图如下:
点评:这是一个从具体到抽象的过程,具体方法:
(1)弄清如果由人来做,应该采取哪些步骤;
(2)对这些步骤进行归纳整理,抽象出数学模型;
(3)对其中的重复步骤,通过使用相同变量等方式求得形式的统一,然后简练地用循环解决.
思考过程
算法是在有限步骤内求解某一问题所使用的一组定义明确的规则.通俗点说,就是计算机解题的过程.
1.本节通过对解决具体问题过程与步骤的分析(如求两个数的最大公约数),体会算法的思想,进一步了解算法的含义.
2.本节通过阅读中国古代数学中的算法案例,如约分术,体会中国古代数学对世界数学发展的贡献.通过学生自己的亲身实践,亲自去解决几个算法设计的问题,才能体会到算法的基本思想.数学的其他内容与算法密切相关,如函数、数列等.我们在学习这些内容时要和算法联系起来.。