高中数学必修三--《1.3.3_进位制》_第1页
高中数学必修三--《1.3.3_进位制》_第2页
高中数学必修三--《1.3.3_进位制》_第3页
高中数学必修三--《1.3.3_进位制》_第4页
高中数学必修三--《1.3.3_进位制》_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.3 算法案例算法案例 第四课时第四课时 问题提出问题提出1.“满几进一满几进一”就是几进制,就是几进制,k进制使用哪进制使用哪几个数字,几个数字,k进制数化为十进制数的一般算进制数化为十进制数的一般算式是什么式是什么?问题提出问题提出1.“满几进一满几进一”就是几进制,就是几进制,k进制使用哪进制使用哪几个数字,几个数字,k进制数化为十进制数的一般算进制数化为十进制数的一般算式是什么式是什么?0112211)(121kakakakaaaaannnnknn 问题提出问题提出2.利用利用k进制数化十进制数的一般算式,进制数化十进制数的一般算式,可以构造算法,设计程序,通过计算机可以构造算法,设

2、计程序,通过计算机就能把任何一个就能把任何一个k进制数化为十进制数进制数化为十进制数.在实际应用中,我们还需要把任意一个在实际应用中,我们还需要把任意一个十进制数化为十进制数化为k进制数的算法,对此,进制数的算法,对此,我们作些理论上的探讨我们作些理论上的探讨.知识探究(一):除k取余法思考思考1:二进制数二进制数101101(2)化为十进制数是什化为十进制数是什么数?十进制数么数?十进制数89化为二进制数是什么数?化为二进制数是什么数?知识探究(一):除k取余法思考思考1:二进制数二进制数101101(2)化为十进制数是什化为十进制数是什么数?十进制数么数?十进制数89化为二进制数是什么数?

3、化为二进制数是什么数?101101(2)=25+23+22+1=45. 知识探究(一):除k取余法思考思考1:二进制数二进制数101101(2)化为十进制数是什化为十进制数是什么数?十进制数么数?十进制数89化为二进制数是什么数?化为二进制数是什么数?101101(2)=25+23+22+1=45. 89=2(2(2(2(22+1)+1)+0)+0)+1知识探究(一):除k取余法思考思考1:二进制数二进制数101101(2)化为十进制数是什化为十进制数是什么数?十进制数么数?十进制数89化为二进制数是什么数?化为二进制数是什么数?101101(2)=25+23+22+1=45. 89=2(2(

4、2(2(22+1)+1)+0)+0)+1 =126+025+124+123+022+021 +120=1011001(2).思考思考2:上述化十进制数为二进制数的算上述化十进制数为二进制数的算法叫做法叫做除除2取余法取余法,转化过程有些复杂,转化过程有些复杂,观察下面的算式你有什么发现吗?观察下面的算式你有什么发现吗? 21222502112222442891001101余数余数思考思考2:上述化十进制数为二进制数的算上述化十进制数为二进制数的算法叫做法叫做除除2取余法取余法,转化过程有些复杂,转化过程有些复杂,观察下面的算式你有什么发现吗?观察下面的算式你有什么发现吗? 思考思考3:上述方法

5、也可以推广为把十进上述方法也可以推广为把十进制数化为制数化为k进制数的算法,称为进制数的算法,称为除除k取取余法余法,那么十进制数,那么十进制数191化为五进制数化为五进制数是什么数?是什么数?思考思考3:上述方法也可以推广为把十进上述方法也可以推广为把十进制数化为制数化为k进制数的算法,称为进制数的算法,称为除除k取取余法余法,那么十进制数,那么十进制数191化为五进制数化为五进制数是什么数?是什么数?0515753851911321余数余数思考思考3:上述方法也可以推广为把十进上述方法也可以推广为把十进制数化为制数化为k进制数的算法,称为进制数的算法,称为除除k取取余法余法,那么十进制数,

6、那么十进制数191化为五进制数化为五进制数是什么数?是什么数?0515753851911321余数余数191=1231(5)思考思考4:若十进制数若十进制数a除以除以2所得的商是所得的商是q0,余数是,余数是r0, 即即a=2q0+ r0;q0除以除以2所得的商是所得的商是q1,余数是,余数是r1, 即即q0=2q1+ r1; qn-1除以除以2所得的商是所得的商是0,余数是,余数是rn, 即即qn-1= rn,那么十进制数那么十进制数a化为二进制数是什么数?化为二进制数是什么数?a=rnrn-1r1r0(2)思考思考4:若十进制数若十进制数a除以除以2所得的商是所得的商是q0,余数是,余数是

7、r0, 即即a=2q0+ r0;q0除以除以2所得的商是所得的商是q1,余数是,余数是r1, 即即q0=2q1+ r1; qn-1除以除以2所得的商是所得的商是0,余数是,余数是rn, 即即qn-1= rn,那么十进制数那么十进制数a化为二进制数是什么数?化为二进制数是什么数?知识探究(二):十进制化k进制的算法 知识探究(二):十进制化k进制的算法 思考思考1:根据上面的分析,将十进制数根据上面的分析,将十进制数a化化为二进制数的算法步骤如何设计?为二进制数的算法步骤如何设计?知识探究(二):十进制化k进制的算法 思考思考1:根据上面的分析,将十进制数根据上面的分析,将十进制数a化化为二进制

8、数的算法步骤如何设计?为二进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制数a的值的值.知识探究(二):十进制化k进制的算法 思考思考1:根据上面的分析,将十进制数根据上面的分析,将十进制数a化化为二进制数的算法步骤如何设计?为二进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制数a的值的值.第二步,求出第二步,求出a除以除以2所得的商所得的商q,余数,余数r.知识探究(二):十进制化k进制的算法 思考思考1:根据上面的分析,将十进制数根据上面的分析,将十进制数a化化为二进制数的算法步骤如何设计?为二进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制

9、数a的值的值.第二步,求出第二步,求出a除以除以2所得的商所得的商q,余数,余数r.第三步,把所得的余数依次从右到左排列第三步,把所得的余数依次从右到左排列.知识探究(二):十进制化k进制的算法 思考思考1:根据上面的分析,将十进制数根据上面的分析,将十进制数a化化为二进制数的算法步骤如何设计?为二进制数的算法步骤如何设计?第四步,若第四步,若q0,则,则a=q,返回第二步;否,返回第二步;否则,输出全部余数则,输出全部余数r排列得到的二进制数排列得到的二进制数.第一步,输入十进制数第一步,输入十进制数a的值的值.第二步,求出第二步,求出a除以除以2所得的商所得的商q,余数,余数r.第三步,把

10、所得的余数依次从右到左排列第三步,把所得的余数依次从右到左排列.思考思考2:利用除利用除k取余法,将十进制数取余法,将十进制数a化为化为k进制数的算法步骤如何设计?进制数的算法步骤如何设计?思考思考2:利用除利用除k取余法,将十进制数取余法,将十进制数a化为化为k进制数的算法步骤如何设计?进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制数a和基数和基数k的值的值.思考思考2:利用除利用除k取余法,将十进制数取余法,将十进制数a化为化为k进制数的算法步骤如何设计?进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制数a和基数和基数k的值的值.第二步,求出第二步,求出a

11、除以除以k所得的商所得的商q,余数,余数r.思考思考2:利用除利用除k取余法,将十进制数取余法,将十进制数a化为化为k进制数的算法步骤如何设计?进制数的算法步骤如何设计?第一步,输入十进制数第一步,输入十进制数a和基数和基数k的值的值.第二步,求出第二步,求出a除以除以k所得的商所得的商q,余数,余数r.第三步,把所得的余数依次从右到左排列第三步,把所得的余数依次从右到左排列.思考思考2:利用除利用除k取余法,将十进制数取余法,将十进制数a化为化为k进制数的算法步骤如何设计?进制数的算法步骤如何设计?第四步,若第四步,若q0,则,则a=q,返回第二步;,返回第二步; 否则,输出全部余数否则,输

12、出全部余数r排列得到的排列得到的k进制数进制数.第一步,输入十进制数第一步,输入十进制数a和基数和基数k的值的值.第二步,求出第二步,求出a除以除以k所得的商所得的商q,余数,余数r.第三步,把所得的余数依次从右到左排列第三步,把所得的余数依次从右到左排列.思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示?思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k思考思考3:将除将除k取余

13、法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何

14、表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=q思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左

15、排列把所得的余数依次从右到左排列a=qq=0?否否思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否思考思考3:将除将除k取余法的算法步骤用程序框图取余法的算法步骤用程序框图如何表示?如何表示? 开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq

16、=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结

17、束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,k思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,kb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余

18、数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0b=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除

19、以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=0思考思考4:该程序框图对应的程序如何表

20、述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,kb=0i=0DOq=akr=a MOD kb=b+r*10i思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到

21、的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=b+r*10ii=i+1b=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=b+r*10ii=i+1a=qb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a

22、,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=b+r*10ii=i+1LOOP UNTIL q=0a=qb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到

23、的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=b+r*10ii=i+1PRINT bLOOP UNTIL q=0a=qb=0思考思考4:该程序框图对应的程序如何表述?该程序框图对应的程序如何表述?开始开始输入输入a,k求求a除以除以k的商的商q求求a除以除以k的余数的余数r把所得的余数依次从右到左排列把所得的余数依次从右到左排列a=qq=0?结束结束输出全部余数输出全部余数r排排列得到的列得到的k进制数进制数是是否否INPUT a,ki=0DOq=akr=a MOD kb=b+r*10ii=i+1PRINT bENDLOOP UNTIL q=0a=qb=0理论迁移理论迁移例例1 将十进制数将十进制数458分别转化为四进制分别转化为四进制数和六进制数数和六进制数.理论迁移理论迁移例例1 将十进制数将十进制数458分别转化为四进制分别转化为四进制数和六进制数数和六进制数.041474284114445822031余数余数理论迁移理论迁移例例1 将十进制数将十进制数458分别转化为四进制分别转化为四进制数和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论