1、 1 高中数学(人教 A 版)能力形成单元测试卷 (必修 3 1.3 算法 案例 ) 班别 姓名 学号 成绩 1. ( 1)将 101111011( 2) 转化为十进制的数; ( 2)将 53( 8) 转化为二进制的数 . 2. 用冒泡排序法将下列各数排成一列: 8, 6, 3, 18, 21, 67, 54. 并写出各趟的最后结果及各趟完成交换的次数 . 3. 用秦九韶算法写出求 f( x) =1+x+0.5x2+0.16667x3+0.04167x4+0.00833x5 在 x= 0.2 时的值的过程 . 2 4. 我国算经十书之一孙子算经中有这样一个问题:“今有物不知其数,三三数之剩二,
2、五五数之剩三,七七数之剩二 .问物几何?答曰:二十三 .”你 能用程序解决这个问题吗? 3 5. 我国古代数学家张邱建编张邱建算经中记有有趣的数学问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一凡百钱,买鸡百只,问鸡翁、母、雏各几何?”你能用程序解决这个问题吗? 4 6. 写出用二分法求方程 x3 x 1=0 在区间 1, 1.5上的一个解的算法(误差不超过 0.001) ,并画出相应的程序框图及程序 . 5 参考答案 1. 解:( 1) 101111011( 2) =1 28+0 27+1 26+1 25+1 24+1 23+0 22+1 21+1=379. ( 2) 53( 8)
3、 =5 81+3=43. 余数4321105212222220110101 53( 8) =101011( 2) . 2. 每一趟都从头开始,两个两个地比较,若前者小,则两数位置不变;否则,调整这两个数的位置 . 解:第一趟的结果是: 6 3 8 18 21 54 67 完成 3 次交换 . 第二趟的结果是: 3 6 8 18 21 54 67 完成 1 次交换 . 第三趟交换次数为 0,说明已排好次序, 即 3 6 8 18 21 54 67. 3. 先把函数整理成 f( x) =( 0.00833x+0.04167) x+0.16667) x+0.5) x+1) x+1, 按照从内向外的顺
4、序依次进行 . x= 0.2 a5=0.00833 V0=a5=0.008333 a4=0.04167 V1=V0x+a4=0.04 a3=0.016667 V2=V1x+a3=0.15867 a2=0.5 V3=V2x+a2=0.46827 a1=1 V4=V3x+a1=0.90635 a0=1 V5=V4x+a0=0.81873 f( 0.2) =0.81873. 4. 设物共 m 个,被 3, 5, 7 除所得的商分别为 x、 y、 z,则这个问题相当于求不定方程 27,35,23zmymxm 的正整数解 . 6 m 应同时满足下列三个条件:( 1) m MOD 3=2;( 2) m M
5、OD 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 5.设鸡翁、母、雏各 x、 y、 z 只,则 ,1 0 01 0 0335zyxzyx 由 , 得 z=100 x y, 代入 , 得 5x+3y+3100 yx=100, 7x+4y=100.
6、 求方程的解,可由程序解之 . 程序: 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 7 (法二) 实际上,该题可以不对方程组进行化简,通过设置多重循环的方式得以实现 .由、可得 x 最大值为 20, y 最大值为 33, z 最大值为 100,且 z 为 3 的倍数 .程序如下: x=1 y=1 z=3 WHILE x =20 WHILE y =33 WHILE z =100 IF
7、5*x+3*y+z/3=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 6. 用二分法求方程的近似值一般取区间 a, b具有以下特征: f( a) 0, f( b) 0. 由于 f( 1) =13 1 1= 1 0, f( 1.5) =1.53 1.5 1=0.875 0, 所以取 1, 1.5中点25.11=1.25 研究,以下同求 x2 2=0 的根的方法 . 相应的程序框图是: 8 开始a=1b=1.5c=0.001是是是否否否f a a a( )= - -1f x x x( )= - -1fx( )=0?f a f x( ) ( )033x=ab+2ax= bx=a b - c?输出x程序: a=1 b=1.5 c=0.001 DO x=( a+b) /2 f( a) =a 3 a 1 f( x) =x 3 x 1 IF f( x) =0 THEN PRINT “ x=”; x 9 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