学业分层测评(八) 算法案例
(建议用时:45分钟)
[学业达标]
一、选择题
1.关于进位制说法错误的是( )
A.进位制是人们为了计数和运算方便而约定的记数系统
B.二进制就是满二进一,十进制就是满十进一
C.满几进一,就是几进制,几进制的基数就是几
D.为了区分不同的进位制,必须在数的右下角标注基数
【解析】 一般情况下,不同的进位制须在数的右下角标注基数,但十进制可以不用标注,所以不是必须在数的右下角标注基数,所以D错误.
【答案】 D
2.下列四个数中,数值最小的是( )
A.25(10) B.54(4)
C.10 110(2) D.10 111(2)
【解析】 统一成十进制,B中54(4)=5×41+4=24,C中10 110(2)=1×24+1×22+2=22,D中,10 111(2)=23.
【答案】 C
3.用更相减损术求1 515和600的最大公约数时,需要做减法次数是( )
A.15 B.14
C.13 D.12
【解析】 1 515-600=915,915-600=315,600-315=285,315-285=30,285-30=255,255-30=225,225-30=195,195-30=165,165-30=135,135-30=105,105-30=75,75-30=45,45-30=15,30-15=15.
∴1 515与600的最大公约数是15.则共做14次减法.
【答案】 B
4.计算机中常用的十六进制是逢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.B0
【解析】 A×B用十进制表示10×11=110,而110=6×16+14,所以用16进制表示6E.
【答案】 A
5.以下各数有可能是五进制数的是( )
A.15 B.106
C.731 D.21 340
【解析】 五进制数中各个数字均是小于5的自然数,故选D.
【答案】 D
二、填空题
6.用更相减损术求36与134的最大公约数,第一步应为________.
【解析】 ∵36与134都是偶数,∴第一步应为:先除以2,得到18与67.
【答案】 先除以2,得到18与67
7.用秦九韶算法求f(x)=2x3+x-3当x=3时的值v2=________.
【解析】 f(x)=((2x+0)x+1)x-3,
v0=2;
v1=2×3+0=6;
v2=6×3+1=19.
【答案】 19
8.将八进制数127(8)化成二进制数为________.
【解析】 先将八进制数127(8)化为十进制数:127(8)=1×82+2×81+7×80=64+16+7=87,
再将十进制数87化成二进制数:
∴87=1010111(2),
∴127(8)=1010111(2).
【答案】 1010111(2)
三、解答题
9.用更相减损术求288与153的最大公约数.
【解】 288-153=135,153-135=18,135-18=117,117-18=99,99-18=81,81-18=63,63-18=45,45-18=27,27-18=9,18-9=9.
因此288与153的最大公约数为9.
10.用秦九韶算法计算多项式f(x)=x6-12x5+60x4-160x3+240x2-192x+64,当x=2时的值.
【解】 将f(x)改写为
f(x)=(((((x-12)x+60)x-160)x+240)x-192)x+64,
由内向外依次计算一次多项式当x=2时的值,
v0=1,
v1=1×2-12=-10,
v2=-10×2+60=40,
v3=40×2-160=-80,
v4=-80×2+240=80,
v5=80×2-192=-32,
v6=-32×2+64=0.
所以f(2)=0,即x=2时,原多项式的值为0.
[能力提升]
1.下面一段程序的目的是( )
INPUT m,n
WHILF m<>n
IF m>n THEN
m=m-n
ELSE
n=n-m
END IF
WEND
PRINT m
END
A.求m,n的最小公倍数 B.求m,n的最大公约数
C.求m被n除的商 D.求n除以m的余数
【解析】 本程序当m,n不相等时,总是用较大的数减去较小的数,直到相等时跳出循环,显然是“更相减损术”.故选B.
【答案】 B
2.若k进制数123(k)与十进制数38相等,则k=________.
【解析】 由k进制数123可知k≥4.下面可用验证法:若k=4,则38(10)=212(4),不合题意;若k=5,则38(10)=123(5)成立,所以k=5.
或者123(k)=1×k2+2×k+3=k2+2k+3,∴k2+2k+3=38,k2+2k-35=0,k=5(k=-7<0舍去).
【答案】 5
3.若二进制数10b1(2)和三进制数a02(3)相等,求正整数a,b. 【导学号:28750022】
【解】 ∵10b1(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.
4.用秦九韶算法求多项式f(x)=8x7+5x6+3x4+2x+1,当x=2时的值.
【解】 根据秦九韶算法,把多项式改写成如下形式:
f(x)=8x7+5x6+0·x5+3·x4+0·x3+0·x2+2x+1
=((((((8x+5)x+0)x+3)x+0)x+0)x+2)x+1.
而x=2,所以有
v0=8,
v1=8×2+5=21,
v2=21×2+0=42,
v3=42×2+3=87,
v4=87×2+0=174,
v5=174×2+0=348,
v6=348×2+2=698,
v7=698×2+1=1 397.
所以当x=2时,多项式的值为1 397.