北京师范大学(珠海)附属高级中学2011级 高二年级第二学期(理科数学)备课组教案
课题:§ 算法案例——进位制
教学目标:
知识与能力:了解各种进位制与十进制之间转换的规律,会利用各种7 个百, 2 表示 2 个十, 1 表示 1 个一.
根据它的意义,我们可以把它写成下面的形式:
3721=3×103+7×102+2×101+1×100。
请你模仿上述过程,把八进制数 7342 改写成上述形式。
(8)
上面这个改写过程,就是把 k 进制的数转化为 10 进制数的方法,只要写成各个位上数字与 k 的幂的
乘积之和的形式,就完成了转换
例题:把二进制数 110011 化为十进制数
(2)
解:110011=1×25+1×24+0×23+0×22+1×21+1×20=32+16+2+1=51
算法步骤:
第一步,输入 a,k,n 的值.
北京师范大学(珠海)附属高级中学2011级 高二年级第二学期(理科数学)备课组教案
第二步, b 0,i 1.
第三步,b b a k i1,i i 1 .
i
第四步,判断i n 是否成立,若是,则执行第五步;否则,返回第三步.
第五步,输出 b 的值.
(2)程序框图为:
(3)程序为:
INPUT “a,k,n=”;a,k,n
b=0
i=1
t=a MOD 10
DO
b=b+t*k^(i-1)
a=a\10
t= a MOD 10
i=i+1
LOOP UNTIL i>n
PRINT b
END
2、十进制转为非十进制
设问:我们已经会把 k 进制数转化为 10 进制的数,那么如何把十进制数转化为 k 进制数呢?
如:怎样把十进制的数 89 转化为二进制数?
二进制数要满足“满二进一”的原则
89=2×44+1
44=2×22+0
22=2×11+0
11=2×5+1
5=2×2+1
2=2×1+0
1=2×0+1
89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1
=1×26+0×25+1×24+1×23+0×22+0×21+1×20
=1
第10课时-§1.3算法案例——进位制 来自淘豆网m.daumloan.com转载请标明出处.