.“满几进一”就是几进制,k进制使用哪几个数字,k进制数化为十进制数的一般算式是什么?a,aaa?kmn-1?k"L+a,?ka,?k2利用k进制数化十进制数的一般算式,可以构造算法,设计程序,,我们还需要把任意个十进制数化为k进制数的算法,对此,:把89化为二进制的数分析:把89化为二进制的数需想办法将89先写成如下形式89=an×2+an1×2m1+,,+a1×21+a0×2089=64+16+8+1=1×2640×25+1×24+1×23+0×22+0×21+1×20=1011001(2)但如果数太大我们是无法这样凑出来的怎么办?89=44×2+1,44=22×2+0,22=11×2+0,11=5×2+1,5=2×2+1,2=1×2+,1=0×2+1,89=44×2+1,44=22×2+0,22=11×2+0,11=5×2+1,5=2×2+1,2=1×2+0,1=0×2+189=44×2+1,可以用2连续去除89=(22×2+0)×2+1或所得商(一直到商为0为止,然后取余数(11×2+0)×2+0)×2+1除2取余法(5×2+1)×2+0)×2+0)×2+1((2×2+1)×2+1)×2+0)×2+0)×2+1=((K2)+0)×2+1)×2+1)×2+0)×2+0)×2+11×26+0×25+1×24+1×23+0×22+0×21+1×20=1011001知识探究(一):除k取余法我们可以用下面的除法算式表示除2取余法:2L89余数把算式中各步所得的余数244从下到上排列,得到22289=1011001(2)21125这种方法也可以推广为把2001101十进制数化为k进制数的算法称为除k取余法0六崇心带的漂微的燕练习:十进制数191化为五进制数是什么数?余数5|19**********=1231思考:若十进制数a除以2所得的商是q,余数是ro,即a=2°q0+q除以2所得的商是q1,余数是r1即a=2°q1+rqn除以2所得的商是0,余数是rn即qn=1=rn那么十进制数a化为二进制数是什么数?a=rr_rro(2)知识探究(二):十进制化k进制的算法思考1:根据上面的分析,将十进制数a化为二进制数的算法步骤如何设计?第一步,输入十进制数a的值第二步,求出a除以2所得的商q,余数r第三步,把所得的余数依次从右到左排列第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的二进制数
算法案例——十进制化k进制 来自淘豆网m.daumloan.com转载请标明出处.