《算法案例(第三课时).ppt》由会员分享,可在线阅读,更多相关《算法案例(第三课时).ppt(14页珍藏版)》请在三一办公上搜索。
1、算法案例(3),一、进位制,1、什么是进位制?,2、最常见的进位制是什么?除此之外还有哪些常见的进位制?请举例说明,进位制是人们为了计数和运算方便而约定的记数系统.,3、我们了解十进制吗?所谓的十进制,它是如何构成的?,十进制由两个部分构成,例如:3721,其它进位制的数又是如何的呢?,第一、它有0、1、2、3、4、5、6、7、8、9十个数字;,第二、它有“权位”,即从右往左为个位、十位、百位、千位等等.,(用10个数字来记数,称基数为10),表示有:1个1,2个十,7个百即7个10的平方,3个千即3个10的立方,4、二进制,二进制是用0、1两个数字来描述的.如11001等,二进制的表示方法,
2、区分的写法:11001(2)或者(11001)2,8进制呢?,如7342(8),k进制呢?,anan-1an-2a2a1(k)?,二、二进制与十进制的转换,1、二进制数转化为十进制数,例1 将二进制数110011(2)化成十进制数,解:,根据进位制的定义可知,所以,110011(2)=51.,将下面的二进制数化为十进制数?,(1)11,(2)111,(3)1111,(4)11111,练习,2、十进制转换为二进制(除2取余法:用2连续去除89或所得的商,然后取余数),例2 把89化为二进制数,解:,根据“逢二进一”的原则,有,892441,2(2220)+1,2(2(2110)+0)+1,2(2
3、(2(2 51)+0)+0)+1,5 2 21,892441,44 2220,22 2110,11 2 51,2(2(2(2(2 21)+1)+0)+0)+1,2(2(2(2(221)1)0)0)1,89126025124123022021120.,所以:89=1011001(2).,2(2(2(2321)0)0)1,2(2(242220)0)1,2(2523+2200)1,2624+230021.,所以892(2(2(2(2 2 1)1)0)0)1,2、十进制转换为二进制,例2 把89化为二进制数,5,2,2,2,1,2,0,1,0,余数,11,22,48,89,2,2,2,2,0,1,1,
4、0,1,注意:1.最后一步商为0,2.将上式各步所得的余数从下到上排列,得到:89=1011001(2),将下面的十进制数化为二进制数?,(1)10,(2)20,(3)128,(4)256,练习,例3 把89化为五进制数,3、十进制转换为其它进制,解:,根据除k取余法,以5作为除数,相应的除法算式为:,所以,89=324(5).,将k进制数a转换为十进制数(共有 n位)的程序,a=anan-1 a3a2a1(k),=ank(n-1)+an-1k(n-2)+a3k2+a2k1+a1k0,b=a1k0,b=a2k1+b,b=a3k2+b,b=ankn-1+b,ai=GET aiGET函数用于取出a的右数第i位数,INPUT a,k,n,i=1,b=0,WHILE i=n,t=GET ai,b=t*k(i-1)+b,i=i+1,WEND,PRINT b,END,i=i+1,i=1,b=aiki-1+b,2、掌握二进制与十进制之间的转换,1、进位制的概念,小结,课本P38,习题1.3 第4题,课后作业,