?m?3x?2,??m?5y?3, 的正整数解. ?m?7z?2?m应同时满足下列三个条件:(1)m MOD 3=2;(2)m MOD 5=3; (3)m MOD 7=2.因此,可以让m从2开始检验,若3个条件中有任何一个不成立,则m递增1,一直到m同时满足三个条件为止. 程序:m=2 f=0
WHILE f=0
IF m MOD 3=2 AND m MOD 5=3 AND m MOD 7=2 THEN PRINT “物体的个数为:”;m f=1 ELSE m=m+1 END IF WEND END
19.用辗转相除法或者更相减损术求三个数 324 , 243 , 135 的最大公约数. 【答案】324=243×1+81 243=81×3+0
则 324与 243的最大公约数为 81 又 135=81×1+54 81=54×1+27 54=27×2+0
则 81 与 135的最大公约数为27
所以,三个数 324、243、135的最大公约数为 27
3
20.写出用二分法求方程x-x-1=0在区间[1,1.5]上的一个解的算法(误差不超过0.001),并画出相应的程序框图及程序.
【答案】用二分法求方程的近似值一般取区间[a,b]具有以下特征:
3
f(a)<0,f(b)>0. 由于f(1)=1-1-1=-1<0,
3
f(1.5)=1.5-1.5-1=0.875>0, 所以取[1,1.5]中点相应的程序框图是:
1?1.52
=1.25研究,以下同求x-2=0的根的方法. 2开始a=1b=1.5c=0.001a+b2x=3-a-1f(a)=a 3-x-1f(x)=x f(x)=0?否是f(a)f(x)<0否是a=xb=x否a-b <c?是输出x程序:a=1
b=1.5 c=0.001
DO x=(a+b)2
∧
f(a)=a3-a-1
∧
f(x)=x3-x-1 IF f(x)=0 THEN PRINT “x=”;x ELSE
IF f(a)*f(x)<0 THEN b=x ELSE
a=x END IF END IF
LOOP UNTIL ABS(a-b)<=c PRINT “方程的一个近似解x=”;x END
1111
21.设计算法求:+++?+的值,要求画出程序框图.
1×22×33×499×100
【答案】这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法;程序框图如下图所示.
22.我国古代数学家张邱建编《张邱建算经》中记有有趣的数学问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一凡百钱,买鸡百只,问鸡翁、母、雏各几何?”你能用程序解决这个问题吗?
【答案】设鸡翁、母、雏各x、y、z只,则
z??5x?3y??100,3??x?y?z?100,?由②,得z=100-x-y, ③ ③代入①,得5x+3y+
①②
100?x?y=100, 37x+4y=100. ④ 求方程④的解,可由程序解之. 程序:x=1 y=1
WHILE x<=14 WHILE y<=25
IF 7*x+4*y=100 THEN
z=100-x-y
PRINT “鸡翁、母、雏的个数别为:”;x,y,z END IF y=y+1 WEND
x=x+1 y=1 WEND END
(法二)实际上,该题可以不对方程组进行化简,通过设置多重循环的方式得以实现.由①、②可得x最大值为20,y最大值为33,z最大值为100,且z为3的倍数.程序如下: x=1 y=1 z=3
WHILE x<=20 WHILE y<=33 WHILE z<=100
IF 5*x+3*y+z3=100 AND
x+y+z=100 THEN
PRINT “鸡翁、母、雏的个数分别为:”;x、y、z END IF z=z+3 WEND
y=y+1 z=3 WEND
x=x+1 y=1 WEND END
吉林省吉大附中高考数学一轮复习 算法初步与框图单元精品训练



