1.3 算法案例 同步练习1(含答案)

文档属性

名称 1.3 算法案例 同步练习1(含答案)
格式 zip
文件大小 86.3KB
资源类型 教案
版本资源 人教新课标A版
科目 数学
更新时间 2016-12-04 21:06:20

图片预览

文档简介

1.3 算法案例
同步练习
                   
一、基础过关
1.下列各进制数中值最小的是
(  )
A.85(9)
B.210(6)
C.1
000(4)
D.111
111(2)
2.把189化为三进制数,则末位数是
(  )
A.0
B.1
C.2
D.3
3.已知一个k进制的数132与十进制的数30相等,那么k等于
(  )
A.7或
4
B.-7
C.4
D.都不对
4.四位二进制数能表示的最大十进制数是
(  )
A.4
B.64
C.255
D.15
5.七进制数中各个数位上的数字只能是______中的一个.
6.已知三个数12(16),25(7),33(4),将它们按由小到大的顺序排列为________.
7.已知1
0b1(2)=a02(3),求数字a,b的值.
8.古时候,当边境有敌人来犯时,守边的官兵通过在烽火台上举火向国内报告,如图,烽火台上点火,表示数字1,不点火表示数字0,约定二进制数对应的十进制的单位是1
000,请你计算一下,这组烽火台表示约有多少敌人入侵?
二、能力提升
9.已知44(k)=36,把67(k)转化为十进制数
为(  )
A.8
B.55
C.56
D.62
10.计算机中常用的十六进制是逢16进1的计数制,采用数字0~9和字母A~F共16个计数符号,这些符号与十进制的数的对应关系如下表:
十六进制
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
十进制
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
例如,用十六进制表示:E+D=1B,则A×B等于
(  )
A.6E
B.72
C.5F
D.80
11.10
303(4)和235(7)化为十进制数分别为______,_______.
12.把五进制数1
234(5)转化为十进制数,再把它转化为八进制数.
三、探究与拓展
13.分别用算法步骤、程序框图、程序语句表示把k进制数a(共有n位数)转化成十进制数b.
1.答案 D
2.答案 A
解析 将189除以3得余数为0,所以189化为三进制数的末位数为0.
3.答案 C
解析 132(k)=1×k2+3×k+2=k2+3k+2,∴k2+3k+2=30,即k2+3k-28=0,
解得k=4或k=-7(舍去).
4.答案 D
解析 由二进制数化为十进制数的过程可知,当四位二进制数为1
111时表示的十进制数最大,
此时,1
111(2)=15.
5.答案 0、1、2、3、4、5、6
解析 “满几进一”就是几进制.
∵是七进制.∴满七进一,根本不可能出现7或比7大的数字,所以各个数位上的数字只能是0、1、2、3、4、5、6中的一个.6.答案 33(4)<12(16)<25(7)
解析 将三个数都化为十进制数.12(16)=1×16+2=18,25(7)=2×7+5=19,
33(4)=3×4+3=15,∴33(4)<12(16)<25(7).
7.解 ∵1
0b1(2)=1×23+b×2+1=2b+9,
a02(3)=a×32+2=9a+2,
∴2b+9=9a+2,即9a-2b=7.∵a∈{1,2},b∈{0,1},
∴当a=1时,b=1符合题意,当a=2时,b=不合题意,
∴a=1,b=1.
8.解 由图可知从左到右的五个烽火台,表示二进制数的自左到右五个数位,依题意知这组烽火台表示的二进制数是11
011,改写为十进制为:11
011(2)=1×24+1×23+0×22+1×21+1×20=16+8+2+1=27(10).
又27×1
000=27
000,
所以这组烽火台表示边境约有27
000个敌人来犯.
9.答案 B
解析 由题意得,36=4×k1+4×k0,所以k=8.
则67(k)=67(8)=6×81+7×80=55.
10.答案 A
解析 A×B用十进制可以表示为10×11=110,
而110=6×16+14,所以用十六进制表示为6E.
11.答案 307 124
解析 10
303(4)=1×44+3×42+3×40=307.
235(7)=2×72+3×71+5×70=124(10).
12.解 1
234(5)=1×53+2×52+3×51+4×50=194(10).
因为,所以1
234(5)=194(10)=302(8).
13.解 算法步骤:
第一步,输入a,k,n的值.
第二步,赋值b=0,i=1.
第三步,b=b+ai·ki-1,i=i+1.
第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.
第五步,输出b的值.
程序框图:
程序语句:
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