新人教A版必修3 高中数学1.3.5 算法案例-进位制学案
- 格式:doc
- 大小:50.00 KB
- 文档页数:4
⼈教课标版⾼中数学必修三《算法案例(第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).。
必修三《1.3算法案例》教学案进位制●三维目标1.知识与技能了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换.2.过程与方法学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k去余法,并理解其中的数学规律.3.情感、态度与价值观领悟十进制,二进制的特点,了解计算机的电路与二进制的联系,进一步认识到计算机与数学的联系.●重点难点重点:各进位制表示数的方法及各进位制之间的转换.难点:除k去余法的理解以及各进位制之间转换的程序框图的设计.●教学建议本节课主要采用演示、讲解和练习三结合的教学方法,教学内容上选用趣味性较强的数字进行举例说明,使学生在学习的过程中随时有新的发现,让他们感觉到原来数字之间还有这么多的联系.这种方法充分体现了以教师为主导、学生为主体的教学原则.通过具体实例,帮助学生理解十进制与其他进制之间的相互转换;通过练习,使学生进一步巩固所学到的知识.在课堂上让学生带着问题听老师讲解相关的知识,在此过程中,指导学生积极思考所提出的问题;然后布置相应的练习,让学生边学边练,实际操作,自我探索,自主学习,使学生在完成练习的过程中不知不觉实现知识的传递、迁移和融合;最后归纳总结,引导学生提出问题、讨论问题和解决问题,进一步加深对知识的理解和记忆,有助于知识的掌握.●教学流程创设问题情境引入问题:二进制,十进制之间怎样相互转化⇒学生自主学习,主动探索二进制与十进制的相互转化⇒分组讨论、各组展示自己的成果教师总结,强调关键点及注意点⇒通过例1的教学,使学生掌握k进制转化为十进制的方法⇒通过例2及变式训练使学生掌握十进制转化为k进制的方法⇒通过例3的学习使学生掌握不同进位制间的相互转化⇒归纳整理,课堂小结、整体认识进位制间的关系⇒完成当堂双基达标,巩固所学知识,并进行反馈矫正课标解读 1.了解进位制的概念.(重点)2.掌握不同进位制之间的相互转化.(难点)进位制的概念【问题导思】十进制使用0~9十个数字,那么二进制使用哪些数字?六进制呢?【提示】二进制使用0~1两个数字,六进制使用0~5六个数字.进位制是人们为了计数和运算方便而约定的记数系统,“满几进一”就是几进制,几进制的基数就是几.进位制之间的相互转化【问题导思】二进制数110 011(2)化为十进制数是多少?【提示】110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=51.k进制化为十进制的方法a n·a n-1·a n-2……a0(k)=a n×k n+a n-1×k n-1+…a1k+a0.k进制转化为十进制将二进制数101 101(2)化为十进制数.【思路探究】按二进制化十进制的方法,写成不同位上的数乘以基数的幂的形式,再相加求和.【自主解答】101 101(2)=1×25+0×24+1×23+1×22+0×21+1×20=32+8+4+1=45.一个k进制的正整数就是各位数码与k的方幂的乘积的和,其中幂指数等于相应数码所在位数(从右往左数)减1.例如:230 451(k)=2×k5+3×k4+0×k3+4×k2+5×k+1.将下列各数化成十进制数.(1)11 001 000(2);(2)310(8).【解】(1)11 001 000(2)=1×27+1×26+0×25+0×24+1×23+0×22+0×21+0×20=200;(2)310(8)=3×82+1×81+0×80=200.十进制转化为k进制(1)将194化成八进制数;(2)将48化成二进制数.【思路探究】除k取余→倒序写出→标明基数【自主解答】(1)∴194化为八进制数为302(8).(2)∴48化为二进制数为110 000(2).1.将十进制化成k进制的方法:用除k取余法,用k连续去除十进制数所得的商,直到商为零为止,然后将各步所得的余数倒序写出,即为相应的k进制数.2.为了区分不同的进位制,常在数的右下角标明基数.十进制数一般不标注基数.将十进制数30化为二进制数.【解】∴30(10)=11 110(2).不同进位制之间的转化将七进制数235(7)转化为八进制数.【思路探究】七进制→十进制→八进制【自主解答】235(7)=2×72+3×71+5×70=124,利用除8取余法(如图所示).∴124=174(8),∴235(7)转化为八进制为174(8).1.本题在书写八进制数174(8)时,常因漏掉右下标(8)而致误.2.对于非十进制数之间的互化,常以“十进制数”为中间桥梁,用除k取余法实现转化.将二进制数1 010 101(2)化为十进制数结果为________;再将该数化为八进制数结果为________.【解析】 1 010 101(2)=1×26+0×25+1×24+0×23+1×22+0×21+1×20=85.∴85化为八进制数为125(8).【答案】85125(8)(见学生用书第26页)算法案例在实际问题中的应用(12分)古时候,当边境有敌人来犯时,守边的官兵通过在烽火台上点火向境内报告,如图1-3-1所示,烽火台上点火表示数字1,未点火表示数字0,约定二进制数对应的十进制数的单位是1 000,请你计算一下,这组烽火台表示有多少敌人入侵?图1-3-1【思路点拨】观察图形发现中间的烽火台未点火,得出其代表数字为0,其他都为1,由此得出二进制数,再将其转化为实际人数.【规范解答】由图易知这组烽火台表示的二进制数为11 011(2),4分它表示的十进制数为11 011(2)=1×24+1×23+0×22+1×21+1×20=27,8分由于十进制数的单位是1 000,故入侵敌人的数目为27×1 000=27 000.12分本题将军事知识与进位制之间的转化巧妙结合起来,在将二进制数转化为十进制数后,应明确此数并不是所求敌人的人数,不要忽视题目中条件“单位是1 000”.把一个非十进制数转化为另一种非十进制数,通常是把这个数先转化为十进制数,然后再利用除k取余法,把十进制数转化为k进制数.而在使用除k取余法时要注意以下几点:1.必须除到所得的商是0为止;2.各步所得的余数必须从下到上排列;3.切记在所求数的右下角标明基数.(见学生用书第26页)1.下列各数中可能是四进制数的是()A.55B.32C.41D.38【解析】四进制数中最大数不超过3,故B正确.【答案】 B2.110(2)转化为十进制数是()A.5 B.6 C.4 D.7【解析】110(2)=1×22+1×21+0×20=6.【答案】 B3.把153化为三进制数,则末位数是()A.0 B.1 C.2 D.3【解析】153÷3=51,余数为0,由除k取余法知末位数为0. 【答案】 A4.把154(6)化为七进制数.【解】154(6)=1×62+5×61+4×60=70.∴70=130(7).∴154(6)=130(7).一、选择题1.下列写法正确的是()A.858(8)B.265(7)C.312(3)D.68(6)【解析】k进制中各位上的数字均小于k,故A、C、D选项错误.【答案】 B2.(2013·洛阳高一检测)把89转化为五进制数是()A.324(5)B.253(5)C.342(5)D.423(5)【解析】故89=324(5).【答案】 A3.三位五进制数表示的最大十进制数是() A.120 B.124 C.144 D.224【解析】三位五进制数最大为444(5),444(5)=4×52+4×51+4×50=124.【答案】 B4.由389化为的四进制数的末位是() A.3 B.2 C.1 D.0【解析】∵∴389=12 011(4),故选C.【答案】 C5.下列各数中,最小的数是()A.111 111(2)B.75C.200(6)D.105(8)【解析】111 111(2)=1×25+1×24+1×23+1×22+1×21+1×20=63. 200(6)=2×62=72.105(8)=1×82+0×81+5×80=69.【答案】 A二、填空题6.将101 110(2)化为十进制数为________.【解析】101 110(2)=1×25+0×24+1×23+1×22+1×21+0×20=32+8+4+2=46.【答案】467.已知一个k进制数132(k)与十进制数30相等,则k等于________.【解析】132(k)=1×k2+3×k+2=k2+3k+2=30,∴k=4或-7(舍).【答案】 48.五进制数23(5)转化为二进制数为________.【解析】23(5)=2×51+3×50=13,将13化为二进制数13=1 101(2).【答案】 1 101(2)三、解答题9.在什么进制中,十进制数71记为47?【解】设47(k)=71(10),则4×k1+7×k0=4k+7=71,∴k=16,即在十六进位制中,十进制71记为47.10.设m是最大的四位五进制数,将m化为七进制.【解】∵m是最大的四位五进制数,∴m=4 444(5),∴m=4×53+4×52+4×51+4×50=624(10),∴,∴4 444(5)=1 551(7).11.若二进制数10b 1(2)和三进制数a 02(3)相等,求正整数a ,b . 【解】 ∵10b 1(2)=1×23+b ×2+1=2b +9, a 02(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.计算机为什么要采用二进制呢?第一,二进制只有0和1两个数字,要得到表示两种不同稳定状态的电子器件很容易,而且制造简单,可靠性高.例如,电位的高与低,电容的充电与放电,晶体管的导通与截止,等等.第二,在各种记数法中,二进制运算规则简单,有布尔逻辑代数作理论依据,简单的运算规则使得机器内部的操作也变得简单.二进制加法法则只有4条:0+0=0,0+1=1,1+0=1,1+1=10,而十进制加法法则从0+0=0到9+9=18,有100条.二进制的乘法法则也很简单:0×0=0,0×1=0,1×0=0,1×1=1,而十进制的乘法法则要由一张“九九表”来规定,比较复杂.。
必修3第一章1.3算法案例:案例3进位制[教学目标]:(1)了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换。
(2)学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k 去余法,并理解其中的数学规律。
[教学重点]各进位制表示数的方法及各进位制之间的转换[教学难点]除k取余法的理解[情感态度价值观] 学生通过合作完成任务,领悟十进制,二进制的特点,了解计算机与二进制的联系,进一步认识到计算机与数学的联系,培养他们的合作精神和严谨的态度。
[教学方法] 讲解法、尝试法、归纳法、讨论法、[教学用具]多媒体电脑[学法] 学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法。
[教学过程]一、创设情景,揭示课题辗转相除法和更相减损术,是求两个正整数的最大公约数的算法,秦九韶算法是求多项式的值的算法,将这些算法转化为程序,就可以由计算机来完成相关运算。
人们为了计数和运算方便,约定了各种进位制,本节课我们来共同学习《进位制》你都了解那些进位制?比如说?在日常生活中,我们最熟悉、最常用的是十进位制,据说这与古人曾以手指计数有关;由于计算机的计算与记忆元件特点,计算机上通用的是二进位制;一周七天是七进位;一年十二个月〔生肖、一打〕是十二进制;旧式的称是十六进制;〔老称一斤为16两,故而有了半斤八两之说〕、24进制〔节气〕一小时六十分、角度的单位是六十进位制。
二进制是有德国数学家莱布尼兹发明的。
第一台计算机ENIAC〔埃尼阿克〕用的就是十进制。
计算机之父冯·诺伊曼研究后,提出改进意见,用二进制替代十进制。
主要原因①二进制只有0和1两个数字,要得到两种不同稳定状态的电子器件很容易,而且制造简单,可靠性高;②各种计数法中,二进制运算规那么简单。
如:十进 制乘法叫九九表,二进制只有4句。
课题:§1.3 进位制一.教学任务分析:(1)在理解了算法的三种不同表示方式的基础上,结合算法案例3----进位制算法,让学生经历设计算法解决问题的过程,体验算法在解决问题中的作用.(2)通过对具体实例的算法分析,画程序框图,编制程序,上机验证的方法理解掌握进位制算法.(3)通过进位制算法所蕴涵的算法思想,培养学生利用算法解决问题的意识. 了解计算机的电路与二进制的联系,进一步认识到计算机与数学的联系.二.教学重点与难点:教学重点:各进位制表示数的方法及各进位制之间的转换.教学难点:除k去余法的理解以及各进位制之间转换的程序框图的设计.↓↓↓1.创设情景,揭示课题在日常生活中,我们常用的数字都是十进制的,但是并不是生活中的每一种数字都是十进制的.比如时间和角度的单位用六十进位制,电子计算机用的是二进制.那么什么是进位制?不同的进位制之间又又什么联系呢?2.进位制的概念进位制是一种约定的记数方式.约定:满几进几,就是几进几,几进制的基数就是几.①例如: 最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数,计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个1, 第二位是十位,十位上的数字是几,就表示几个十,接着依次是百位,千位,万位….十进制中的3721中的3表示3个千,7表示7个百, 2表示2个十, 1表示1个一.于是:23101⨯+⨯++=⨯10101273103721⨯②另外:二进制用两个数字0和1表示. 七进制用7个数字0~6表示.二进制中的1111表示为0123212*********⨯+⨯+⨯+⨯=3. 进位制的表示对于任何一个数,我们可以用不同的进位制来表示. 若k 是一个大于1的整数,那么以k 为基数的k 进制数可以表示为一串数字连写在一起的形式: ),,,0,0(011)(011k a a a k a a a a a n n k n n <≤<<--即表示各种进位制数一般在数字右下脚加注来表示比如:)2(111001表示二进制数,)8(71表示八进制.任何进位制的数都可以表示成不同位上数字与基数的幂的乘积之和的形式表示:001111)(011k a k a k a k a a a a a n n n n k n n ⨯+⨯++⨯+⨯=---0123)2(212121211111⨯+⨯+⨯+⨯= 0123)5(525453577342⨯+⨯+⨯+⨯=4. 进位制之间的转化电子计算机一般都使用二进制,下面我们来进行二进制与十进制之间的转化例1: 把二进制数110011(2)化为十进制数.解:110011=1×25+1×24+0×23+0×22+1×21+1×20=32+16+2+1=51例2 :把89化为二进制数.解:根据二进制数满二进一的原则,可以用2连续去除89或所得商,然后去余数.具体的计算方法如下:89=2×44+144=2×22+022=2×11+011=2×5+15=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 取余法. 练习:(1)把2008转换为二进制数.(2008=11 111 011 000(2))(2)把2008转换为八进制数.(2008=3730(8))5. 进位制算法分析例3.设计一个算法,把k 进制数a(共有n 位)化为十进制数b.解:0112211)(11k a k a k a k a a a a a n n n n k n n ⨯+⨯++⨯+⨯==--=-算法分析:第一步:输入a,k 和n 的值.第二步:将b 的值初始化为0,i 的值初始化为1.第三步:b=b+a i ×k i-1,i=i+1.第四步:判断i>n 是否成立.若是,则执行第五步;否则,返回第三步.第五步:输出b 的值.程序框图:说明:把a,在第一次运算时t=aMOD10且t=aMOD10表示t是a除以10的商再被10除的余数,也就是取k进制数中的十位数.依次类推.程序语言:例4.设计一个程序,实现“除k取余法”算法分析:由十进制数a除k得商是q0,余数是r0,即a=kq0+r0,则r0是a的k进制数的右数第1位数;由q0除以k得商是q1,余数是r1,即q0=kq1+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进制数.程序框图:程序语言:6.课堂练习:23456转换成十进制数.设计程序框图把数)8(7.课后作业:<随堂导练>P17-18.。
第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)知识与技能:学生了解进位制的概念,学会表示进位制数,理解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换. (2)过程与方法:学生经历得出各种进位制与十进制之间转换的规律的过程,进一步掌握进位制之间转换的方法.(3)情感态度价值观:学生通过合作完成任务,领悟十进制,二进制的特点,了解计算机的电路与二进制的联系,进一步认识到计算机与数学的联系,培养他们的合作精神和严谨的态度.二.教学重点与难点重点: 各进位制表示数的方法及各进位制之间的转换.难点:“除k取余法”的理解.三.教学方法与手段讲授法、归纳法、讨论法.计算机辅助教学(未能呈现)四.教学过程Ⅰ. 创设情景揭示课题我们常见的数字都是十进制的,但是并不是生活中的每一种数字都是十进制的.你能举出一些实例么?生活中的进位制:如:60进制(在时间上,1小时分成60分钟,1分钟分成60秒;在角度上,1度分成60分,1分分成60秒) 、12进制(月份、生肖、一打)、七进制(一周七天)、16进制(老称一斤为16两,故而有了半斤八两之说)、24进制(节气)等等.那么什么是进位制?不同的进位制之间又有什么联系呢?Ⅱ. 新课讲授一、进位制的概念进位制是人们为了计数和运算方便而约定的记数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;等等,也就是说,“满几进一”就是几进制,几进制的基数就是几.思考1日常生活中,常用的是十进制数,十进制数用哪些数字进行记数?答:0、1、2、3、4、5、6、7、8、9.思考2二进制用的是那些数字?七进制用的是那些数字?答:0、1 ; 0、1、2、3、4、5、6.特别地,十六进制:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F.那么,对于k进制数(k是一个大于1的整数)怎样(以k为基数)记一个数呢?怎样才能分清,不和其它进制数发生混淆呢?二、k进制数的表示对于任何一个数,我们可以用不同的进位制来表示.思考3若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式:)(011k n n a a a a -其中,对于011,,,,a a a a n n -有什么要求呢?明确两个要点:(1) 第一个数字(最高位)不能等于0;(2) 每一个数字都必须小于k .即:表示各种进位制数一般在数字右下角标明基数(十进制一般不标明基数).如:)2(111001表示二进制数;)8(71表示八进制.思考4 十进制数3721如何表示成10的幂的乘积之和的形式?也就是说十进制中的3721中的3表示3个千,7表示7个百, 2表示2个十, 1表示1个一.十进制数在计数时,几个数字排成一排,从右起,第一位是个位,个位上的数字是几,就表示几个一, 第二位是十位,因为满十进一,十位上的数字是几,就表示几个十,接着依次是百位,千位,万位,….对于十进制数,比如说:3721,根据它的意义,我们可以把它写成下面的形式:3721=3×103+7×102+2×101+1×100 请你模仿上述过程,把二进制数11011(2)改写成上述形式:11011(2)=1×24+1×23+0×22+1×21+1×20 3421(5)=3×53+4×52+2×51+1×50思考5:k 进位制的数可以写成什么样的形式呢?(课本40页探究)若)(011k n n a a a a -表示一个k 进制的数,请你把它写成各个位上数字与k 的幂的乘积之和的形式.001111)(011k a k a k a k a a a a a n n n n k n n ⨯+⨯++⨯+⨯=---上面这个改写过程,就是把k 进制的数转化为十进制数的方法,只要写成各个位上数字与k 的幂的乘积之和的形式,就完成了转换.题型二: 十进制数转化为k 进制数例2 把89转化为二进制数.解:因为二进制数要满足“满二进一”的原则, 所以第一步,用2去除89,得到它的商与余数.第二步,用上一步的商去除以2,得到它的商与余数,继续执行第二步,直到商为0为止.89=2×44+144=2×22+022=2×11+011=2×5+15=2×2+12=2×1+01=2×0+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取余法”.注意:我们将十进制数转换为二进制数的时候,希望将十进制数写成基数2的幂的乘积之和的形式。
高一数学必修3 编号_6_ 时间________班级___ 组别___学号____姓名___【学习目标】1.理解进位制的概念,能进行不同进位制的转化;2.了解进位制的程序框图和程序;3.激情投入,积极参与,培养学生严谨的数学思维品质。
【重点、难点】自主学习案【知识梳理】1、进位制是人们为了和方便而约定的记数系统,就是几进制,几进制的基数就是。
2、其他进制的数可以表示为不同位上数字与基数的幂的乘积之和的形式。
3、十进制化成k进制的方法叫。
【预习自测】1.关于进位制说法错误的是()A、进位制是人们为了计数和运算方便而约定的记数系统。
B、二进制就是满二进一,十进制就是满十进一。
C、满几进几,就是几进制,几进制的基数就是几。
D、为了区分不同的进位值,必须在数的右下角标注基数。
2、以下各数中有可能是五进制数的是()A、55B、106C、732D、21343、将11化成二进制数等于【我的疑问】合作探究案【课内探究】例1:将下列非十进制数转化成十进制数(1)110011(2)(2)2124(5)例2、(1)把十进制数89化成二进制数;(2)把十进制数2008转化为八进制数。
例3、分别将1234(5)转化成十进制数和八进制数。
变式:分别将10001(2)转化成六进制数。
总结提升各进位制之间的转化(只限整数) (1)k 进位制数化成十进制数公式:0)10(01111)(01k a k a k a k a a a a a n n n n k n n n ⨯+⨯++⨯+⨯=---(2)十进制数化成k 进制数用除k 取余法,应进行到商是零为止,余数按从小到上的顺序读取才是k 进制数(3)非十进制数之间的互化:可用十进制数为桥梁,实现不同进制数之间的互化。
【当堂检测】1、用“除k 取余法”将十进制数2012转化成二进制数和八进制数2、完成下列进位制之间的转化(1)10212(2)= (10) (2)412(10)= (2)课后练习案1、101(9)化成十进制数等于2、28化成五进制数等于3、2376(10)=(5)(4)119(10)=(6)4、1010(2)×110(3)=(10)5、已知一个k进制数132与十进制数30相等,那么k等于6、(选作)设计一个程序,将2011年转化成二进制数(先画框图,再写程序)。
1.3第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.。