1.3算法案例.doc
13算法案例1.840和1 764的最大公约数是A.84 B.12 C2.三个数72,120,168 的最大公约数是 3. 用秦九韶算法计算多项式当时的值时,需要做乘法和加法的次数分别是 ( ) A. 6 , 6 B. 5 , 6 C. 5 , 5 D. 6 , 54. 用秦九韶算法计算多项式在时的值时,的值为 ( ) A. 845 B. 220 C. 57 D. 345.以下所给的运算结果正确的个数有 SQR4±2 ; 522.5 ; 5/22.5 ; 5 MOD 22.5 ; 5225A. 2 B. 3 C. 4 D. 56用“秦九韶算法计算多项式,当x=2时的值的过程中,要经过 次乘法运算和 次加法运算。7. 用辗转相除法或者更相减损术求三个数 324 , 243 , 135 的最大公约数. 8用秦九韶算法写出求fx=1+xx2x3x4x5在x=0.2时的值的过程.9我国算经十书之一孙子算经中有这样一个问题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二.问物几何?答曰:二十三.你能用程序解决这个问题吗?10I用辗转相除法求840与1 764的最大公约数.II用更相减损术求440 与556的最大公约数11. 我国古代数学家张邱建编张邱建算经中记有有趣的数学问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一凡百钱,买鸡百只,问鸡翁、母、雏各几何?你能用程序解决这个问题吗?12. 1分别用辗转相除法、更相减损术求204与85的最大公约数。2用秦九韶算法计算函数当x2时的函数值.i = 1S = 1n = 0DO S < = 500 S = S + i i = i + 1 n = n + 1WENDPRINT n + 1END13本小题总分值14分根据下面的要求,求满足123n > 500的最小的自然数n。1画出执行该问题的程序框图;2以下是解决该问题的一个程序,但有几处错误,请找出错误并予以更正。13算法案例1. A2. 243. A4. C5C65、57. 27.8f0.2=0.81873.9解:设物共m个,被3,5,7除所得的商分别为x、y、z,那么这个问题相当于求不定方程 的正整数解.m应同时满足以下三个条件:1m MOD 3=2;2m MOD 5=3;3m MOD 7=2.因此,可以让m从2开始检验,假设3个条件中有任何一个不成立,那么m递增1,一直到m同时满足三个条件为止.程序:m=2f=0WHILE f=0IF m MOD 3=2 AND m MOD 5=3AND m MOD 7=2 THENPRINT “物体的个数为:;mf=1ELSEm=m+1END IFWENDEND10解 I用辗转相除法求840与1 764 的最大公约数.1 764 = 840×2 + 84 840 = 84×10 +0所以840与1 764 的最大公约数是84( II)用更相减损术求440 与556的最大公约数.556440 = 116 440116 = 324 324116 = 208 208116 = 92 11692 = 249224 = 68 6824 = 44 4424 = 20 2420 = 4 204 = 16164 = 12 124 = 8 84 = 4所以440 与556的最大公约数411.解.设鸡翁、母、雏各x、y、z只,那么由,得z=100xy, 代入,得5x+3y+=100,7x+4y=100. 求方程的解,可由程序解之.程序:x=1y=1WHILE x=14WHILE y=25IF 7*x+4*y=100 THENz=100xyPRINT “鸡翁、母、雏的个数别为:;x,y,zEND IFy=y+1WEND x=x+1y=1WENDEND、可得x最大值为20,y最大值为33,z最大值为100,且z为3的倍数.程序如下:x=1y=1z=3WHILE x=20WHILE y=33WHILE z=100IF 5*x+3*y+z/3=100 ANDx+y+z=100 THENPRINT “鸡翁、母、雏的个数分别为:;x、y、zEND IFz=z+3WEND y=y+1 z=3WEND x=x+1 y=1WENDEND12解:1用辗转相除法求204与85 的最大公约数:20485×2348534×2173417×2因此,204与85 的最大公约数是17 3分用更相减损术求204与85的最大公约数:204851191198534853417341717因此,204与85的最大公约数是17 6分2根据秦九韶算法,把多项式改写成如下形式:f(x)=(2x+3)x+0)x+5)x-4从内到外的顺序依次计算一次多项式当x=2时的值:v0=2 v1=2×2+3=7 v2=7×2+0=14 v3=14×2+5=33 v4=33×2-4=62所以,当x=2时,多项式的值等于62 12分13开始开始解:1程序框图如下列图: 或者:S0S0i=1i=1i=i+1SS+iSS+ii=i+1是 S<=500 否 S>500 否是输出i1输出i1结束结束 8分2DO应改为WHILE; 10分PRINT n+1 应改为PRINT n; 12分S=1应改为S=0 14分