说明函数f(x)=x^3-3x+1在区间(1,2)内必有零点,用二分法求出一个零点的近似值(误差不超过0.001)

问题描述:

说明函数f(x)=x^3-3x+1在区间(1,2)内必有零点,用二分法求出一个零点的近似值(误差不超过0.001)
1个回答 分类:数学 2014-09-18

问题解答:

我来补答
由于f(1) = 1 - 3 + 1 = -1 < 0
       f(2) = 8 - 6 + 1 = 3 > 0
   因此f(x)在1,2区间内存在一个0点(f'(x) 在 (1,2)区间恒大于0,因此该函数在此区间单调递增).
.算法:
   #include <stdio.h>
   void main()
   {
       float low = 1.0;
       float high = 2.0;
       float value;  
       float mid;
       do {
            mid = (low + high) / 2;
            value = mid * mid * mid - 3 * mid + 1;
            if (value > 0.0)
                  high = mid;
            else
                  low = mid;
       } while (value > 0.001 || value < -0.001);
       printf("The x is:%f",mid);
   }
   程序已运行通过,输出结果为:1.532227
再问: 翻译下行么?
再答: 算法: 获取区间的边缘low和high依据low和high计算当前区间的中点mid依据中点计算f(mid)的值(1)若大于0说明mid偏大,f(x)是单调递增的,因此0点位于mid的左区间,因此将mid的值赋予high(2)若小于0说明mid偏小,f(x)是单调递增的因此0点位于mid的右区间,因此将mid的值赋予low   4. 重复2和3,直到f(mid)的取值符合精度
 
 
展开全文阅读
剩余:2000
上一页:课时练P3