1、算法案例 测试必修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时的值的过程.4. 我国算经十书之一孙子算经中有这样一个问题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二.问物几何?答曰:二十三.”你能用程序解决这个问题吗? 5. 我国古代数学家张邱建编张邱建算经中记有有趣的
2、数学问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一凡百钱,买鸡百只,问鸡翁、母、雏各几何?”你能用程序解决这个问题吗?6. 写出用二分法求方程x3x1=0在区间1,1.5上的一个解的算法(误差不超过0.001),并画出相应的程序框图及程序. 参考答案 1. 解:(1)101111011(2)=128+027+126+125+124+123+022+121+1=379.(2)53(8)=581+3=43.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,按照从内向外的顺序依次进行. x=0.2a5=0.00833 V0=a5=0.008333