必修3 1.3 算法案例
1. (1)将101111011(2)转化为十进制的数; (2)将53(8)转化为二进制的数.
[来源:21世纪教育网]
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. 我国《算经十书》之一《孙子算经》中有这样一个问题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二.问物几何?答曰:二十三.”你
能用程序解决这个问题吗?
21世纪教育网
[来源:21世纪教育网]
5. 我国古代数学家张邱建编《张邱建算经》中记有有趣的数学问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一凡百钱,买鸡百只,问鸡翁、母、雏各几何?”你能用程序解决这个问题吗?
6. 写出用二分法求方程x3-x-1=0在区间[1,1.5]上的一个解的算法(误差不超过0.001),并画出相应的程序框图及程序.
参考答案21世纪教育网
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)=5×81+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.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.818