《1.3算法案例(3)》教学案
- 格式:doc
- 大小:46.54 KB
- 文档页数:5
1.3算法案例(二)__秦九韶算法一、内容及其解析本节的教学内容是算法案例中的秦九韶算法,它是求一元多项式的值的一种方法.在初中,学生已经学习了多项式的有关知识,那里是把多项式看作代数式.因此在本段内容的教学之前,应当先向学生说明,这里是函数的观点考察多项式,因此,求自变量取某个实数时的函数值问题,即求多项式的值就是一个常规问题.二、教学目标及其解析目标定位知识与技能:了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质.过程与方法:模仿秦九韶计算方法,体会古人计算构思的巧妙.了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用.情感态度与价值观目标:通过对秦九韶算法的学习,了解中国古代数学对世界数学发展的贡献,充分认识到我国文化历史的悠久.目标解析1 秦九韶算法是我国南宋数学家秦九韶在他的代表作《数书九章》中提出的一种用于计算一元n 次多项式的值的方法.三、问题诊断分析在本节主要存在的问题是学生不能对秦九韶算法的先进性及其程序设计的理解,所以教师要强调当多项式的次数增大时,此种方法的先进性就体现出来了,所以教师要找到规律,让学生体会此种解法的先进性.四、教学支持条件分析的一般模式在本节课的教学中准备使用多媒体辅助教学.五、教学过程设计问题一 什么事了解秦九韶算法?小问题1 怎样求多项式1)(2345+++++=x x x x x x f 当x=5时的值呢?(设计意图:通过具体的例子引入秦九韶算法.)结论:第一种一共用了10次乘法运算,5次加法运算.而第二种一共用了5次乘法运算,5次加法运算.小问题2 用秦九韶算法求n 次多项式0111...)(a x a x a x a x f n n n n ++++=--当0x x =(0x 是任意实数)时的值,需要多少次乘法运算,多少次加法运算?小问题 3 如何用秦九韶算法完成一般多项式1110()n n n n f x a x a x a x a --=++++的求值问题?要求多项式的值,我们可以把它改写成:11101210()(()))n n n n n n n f x a x a x a x a a x a x a x a x a ----=++++=+++++.首先计算最内层括号内一次多项式的值,即11n n v a x a -=+,然后由内向外逐层计算一次多项式的值,即212n v v x a -=+,323n v v x a -=+,,10n n v v x a -=+.例题1 (课本第38页例2)(设计意图:从实例到一般,先总结实例进而引申到一般) 变式巩固 用秦九韶算法求多项式1432)(2367+-+-=x x x x x f 当x=2时的函数值.小问题4 你是怎么理解秦九韶算法的?结论:秦九韶算法将求n 次多项式的值转化为求n 个一次多项式的值.课堂小结(提问方式)秦九韶算法计算多项式的值及程序设计上述的整个过程只需n 次乘法运算和n 次加法运算;观察上述n 个一次式,可发出k v 的计算要用到1k v -的值,若令0n v a =,可得到下列递推公式:01,(1,2,,)n k k n k v a v v x a k n --=⎧⎨=+=⎩. 这是一个反复执行的步骤,因此可用循环结构来实现.【程序框图】:六 目标检测1、利用秦九韶算法求多项式1153723+-+x x x 在23=x 的值时,在运算中下列哪个值用不到( )A 、164B 、3767C 、86652D 、851692、利用秦九韶算法求多项式1352.75.38123)(23456-++-++=x x x x x x x f 在2=x 的值,写出详细步骤.七 配餐作业A 组②秦九韶算法计算多项式f(x)=12+35x-8x 2+79x 3+6x 4+5x 5+3x 6,当x=-4时的值时,υ3的值为( )A .-845B .220C .-57D .34③用秦九韶算法,求当x=2时,f(x)=x 5-5x 4+x 3-1的函数值.B 组1.秦九韶算法与直接计算相比较,下列说法错误的是( )A 、秦九韶算法与直接计算相比较,大大减少了乘法的次数,使计算量减少,并且逻辑结构简单.B 、秦九韶算法减少了做乘法的次数,在计算机上也就加快了计算的速度.C 、秦九韶算法减少了做乘法的次数,在计算机上也就降低了计算的速度.D 、秦九韶算法避免对自变量x 单独做幂的计算,而是与系数一起逐次增长幂次,从而可提高计算的精度.2.用秦九韶算法和直接算法求当0x x =时()654323126016024019264f x x x x x x x =-+-+-+的值,做的乘法次数分别为( )A.6,20B.7,20C.7,21D.6,21C 组求15.033.016.041.083.0)(2345+++++=x x x x x x f 当x=5时的值.八、教学反思1、学生还是不会分析运算次数的问题,应该给学生详细讲解.2、学生在多项式 11101210()(()))n n n n n n n f x a x a x a x a a x a x a x a x a ----=++++=+++++按照秦九韶算法写成标准形式是容易出错,且速度很慢,应教会学生快速的写法及检验方法.3、应多给学生介绍一些有关秦九韶算法的背景知识,这样更能吸引学生的注意力和学习兴趣,另外介绍历史名人的大致成就,扩大学生的文化视野.。
⼈教课标版⾼中数学必修三《算法案例(第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)教学目标(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的最大公约数。
人教版高中必修3(B版)1.3 中国古代数学中的算法案例课程设计课程简介本课程将介绍中国古代数学中的算法案例,包括“过鸡抵毁”、“商功开方”、“勾股定理”等,旨在通过了解这些古代算法的实际运用,提高学生的数学思维和解决问题的能力。
课时安排本课程设计共设置4个课时,每个课时约45分钟。
课时主题内容第一课时介绍介绍中国古代数学中的算法案例第二课时过鸡抵毁讲解过鸡抵毁算法及其应用第三课时商功开方讲解商功开方算法及其应用第四课时勾股定理讲解勾股定理及其应用课程内容第一课时:介绍在第一课时中,将向学生介绍中国古代数学中的算法案例,包括各算法的基本概念、历史渊源以及现实应用。
同时,也会引导学生认识到古代数学在如今应用的广泛性。
通过讲解,让学生建立对古代数学的基本认知和认识。
第二课时:过鸡抵毁第二课时主要讲解“过鸡抵毁”算法。
这是一种古代算法,其可以用来解决一些几何问题,例如“如何用一块固定面积的木板去切割另一块面积未知的木板,使得两块木板面积相等”。
在讲解的同时,需要与学生一起做一些实际操作,例如让学生进行拼图操作,以加深学生对算法的理解。
同时也要阐述“过鸡抵毁”算法在现实生活中的应用,例如灭蚊草的研发过程中应用了该算法。
第三课时:商功开方第三课时主要讲解“商功开方”算法。
该算法可用来求解二次方程的解。
讲解中需要引导学生深入理解算法原理,例如如何将二次方程转换成商功差式再求解。
同时需要和学生一起进行实际操作,例如用解二次方程,以加深学生对算法的理解。
在讲解过程中,也需要提及“商功开方”算法在现实生活中的应用,例如在导弹制导和卫星轨道计算中的应用。
第四课时:勾股定理第四课时主要讲解“勾股定理”。
在讲解中,需要引导学生对勾股定理的几何意义进行深入理解,例如如何用直角三角形三边长度来计算直角三角形的面积。
同时需要和学生一起进行实际操作,例如用勾股定理计算直角三角形的梯形面积,以加深学生对算法的理解。
在讲解过程中,还需要提及勾股定理在现实生活中的应用,例如在建筑工程、电路设计、地图测量等方面广泛应用。
《1.3算法案例(3)》教学案
进位制
(1)教学目标
(a)知识与技能
了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换.
(b)过程与方法
学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k去余法,并理解其中的数学规律.
(c)情态与价值
领悟十进制,二进制的特点,了解计算机的电路与二进制的联系,进一步认识到计算机与数学的联系.
(2)教学重难点
重点:各进位制表示数的方法及各进位制之间的转换
难点:除k去余法的理解以及各进位制之间转换的程序框图的设计
(3)学法与教学用具
学法:在学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k去余法.
教学用具:电脑,计算器,图形计算器
(4)教学设想
(一)创设情景,揭示课题
我们常见的数字都是十进制的,但是并不是生活中的每一种数字都是十进制的.比如时间和角度的单位用六十进位制,电子计算机用的是二进制.那么什么是进位制?不同的进位制之间又又什么联系呢?
(二)研探新知
进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基数,基数为n,即可称n进位制,简称n进制.现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数.
对于任何一个数,我们可以用不同的进位制来表示.比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的.
表示各种进位制数一般在数字右下脚加注来表示,如111001(2)表示二进制数,34(5)表
示5进制数.
电子计算机一般都使用二进制,下面我们来进行二进制与十进制之间的转化 例1 把二进制数110011(2)化为十进制数.
解:110011=1*25+1*24+0*23+1*24+0*22+1*21+1*20 =32+16+2+1 =51 例2 把89化为二进制数.
解:根据二进制数满二进一的原则,可以用2连续去除89或所得商,然后去余数. 具体的计算方法如下: 89=2*44+1 44=2*22+0 22=2*11+0 11=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 取余法. 当数字较小时,也可直接利用各进位制表示数的特点,都是以幂的形式来表示各位数字,比如2*103表示千位数字是2,所以可以直接求出各位数字.即把89转换为二进制数时,直接
89 44 22 11 5 2 1 2 2 2 2 2 2 2
余数 1 0 0 1 1 0 1
观察得出89与64最接近故89=64*1+25
同理:25=16*1+9
9=8*!+1
即89=64*1+16*1+8*!+1=1*26+1*24+1*23+1*20
练习:(1)把73转换为二进制数
(2)利用除k取余法把89转换为5进制数
把k进制数a(共有n位)转换为十进制数b的过程可以利用计算机程序来实现,语句为: INPUT a,k,n
i=1
b=0
WHILE i<=n
t=GET a[i]
b=b+t*k^(i-1)
i=i+1
WEND
PRINT b
END
练习:(1)请根据上述程序画出程序框图.
参考程序框图:
(2)设计一个算法,实现把k进制数a(共有n位)转换为十进制数b的过程的程序中的GET函数的功能,输入一个正5位数,取出它的各位数字,并输出.
小结:
(1)进位制的概念及表示方法
(2)十进制与二进制之间转换的方法及计算机程序
(5)评价设计
作业:P38 A(4)
补充:设计程序框图把一个八进制数23456转换成十进制数.。