1、第一章 1.3.2进位制 编号009【学习目标】1理解进位制的概念,能进行不同进位制数间的转化2了解进位制转换的程序框图和程序【学习重点】 进位制之间的相互转化【基础知识】进位制(1)概念:人们为了计数和运算方便而约定的计数系统,“满k进一”就是_进制,k是基数(其中k是大于1的整数)k进制的数可以表示为一串数字连写在一起的形式为anan1a1a0(k)(an,an1,a1,a0N,0ank,0an1,a1,a0k)(2)非十进制的k进制数a(共有n位)化为十进制数b的算法步骤:第一步,输入a,k,n的值第二步,将b的值初始化为0,i的值初始化为1.第三步,bbaiki1,ii1.第四步,判断
2、_是否成立,若是,则执行第五步;否则,返回第三步第五步,输出b的值程序框图如图所示程序:INPUT“a,k,n”;a,k,nb0i1taMOD10DObbt*k(i1)aa10taMOD10ii1LOOP UNTIL_PRINTbEND(3)十进制数a化为非十进制的k进制数b的算法是除k取余法算法步骤:第一步,给定十进制正整数a和转化后的数的基数k.第二步,求出_除以_所得的商q,余数r.第三步,将得到的余数依次从_到_排列第四步,若q0,则aq,返回第_步;否则,输出全部余数r排列得到的k进制数程序框图如图所示程序:INPUT“a,k”;a, kb0i0DOqakra MOD kbbr*10
3、iii1aqLOOP UNTIL_PRINT_END教材中的算法案例进一步体现了编写程序的基本过程:算法分析,将解决实际问题的过程以步骤的形式用文字语言表述出来画程序框图,把算法分析用程序框和流程线的形式表达出来编写程序,将程序框图转化为算法语句即程序【做一做】 以下各数有可能是五进制数的是()A15 B106 C731 D21 340k进制数的特点剖析:不妨把各种进制统称为k进制,则k进制数具有以下特点:(1)具有k个数字符号,它们是0,1,2,(k1)(2)由低位到高位是按“逢k进一”的规则进行计数(3)基数是k.(4)可以表示为一串数字连写在一起的形式,即anan1a1a0(k)(0an
4、k,0an1,a1,a0k)(5)与十进制类似,也可以用其基数的幂的形式表示,即anan1a1a0(k)anknan1kn1a2k2a1ka0.【例题讲解】【例题1】 (1)将194化成八进制数;(2)将48化成二进制数【例题2】 将下列各数化成十进制数(1)11 001 000(2);(2)310(8)【例题3】 把1 234(5)转化为六进制数【达标检测】1101(2)转化为十进制数是()A2B5C20D1012下列最大数是()A110(2)B18C16(8)D20(5)3312(4)化为十进制数后的个位数字是_4把98(5)转化为二进制数为_5把301(5)化为七进制数为_【问题与收获】
5、 基础知识答案:(1)k(2)inin(3)ak右左二q0 b【做一做】 D五进制数中各个数字均是小于5的自然数,则仅有21 340满足,故选D例题答案:【例题1】 解:(1)所以194化为八进制数为302(8)(2)所以48化成二进制数为110 000(2)【例题2】 解:(1)11 001 000(2)127126025024123022021020200;(2)310(8)382181080200.【例题3】 解:1 234(5)153252351450194.则1 234(5)522(6)达标检测答案:1B101(2)1220211205.2B110(2)1221210206;16(8)18168014;20(5)25105010.则最大数是18.34312(4)34214124054,则个位数字是4.45398(5)95185053.5136(7)301(5)35205115076.故301(5)136(7)