上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.
当数字较小时,也可直接利用各进位制表示数的特点,都是以幂的形式来表示各位数字,比如2×103表示千位数字是2,所以可以直接求出各位数字.把89转化为二进制数时,直接观察得出89与64最接近,故89=64×1+25.
同理:25=16×1+9,
9=8×1+1.
即89=64×1+16×1+8×1+1=1×26+1×24+1×23+1×20.
位数 6 5 4 3 2 1 0 数字 1 0 1 1 0 0 1
即89=1011001(2).
四、变式训练,深化提高
练习:解:(1)73=2×36+1,
36=2×18+0,
18=2×9+0,
9=2×4+1,
4=2×2+0,
2=2×1+0,
1=2×0+1.
所以73=1×26+0×25+0×24+1×23+0×22+0×21+1×20=1001001(2).
(2)89=5×17+4,
17=5×3+2,
3=5×0+3.
所以89=3×52+2×51+4×50=324(5).
(3)
INPUT "a,k,n=";a,k,n
b=0
i=1
t=a MOD 10
DO