首页 > 编程 > C > 正文

二分法求多项式在-10 10间值的实现代码

2020-01-26 16:15:43
字体:
来源:转载
供稿:网友

代码如下所示:

复制代码 代码如下:

#include <stdio.h>
#include <math.h>

int main()
{
 float  x0,x1,x2,f1,f2,f0;  //x1,x2求两端值
 do
 {
  printf("input 2 num:/n");
  scanf("%f %f",&x1,&x2);
  f1=x1*((2*x1-4)*x1+3)-6;
  f2=x2*((2*x2-4)*x2+3)-6;
 }while(f1*f2>0);  //当输入两个数乘积符号不一致开始求值
 do
 {
  x0=(x1+x2)/2;
  f0=x0 * ((2 * x0 -4) * x1 +3)-6;//x0 * ((2 * x0 -4) * x1 +3)-6  要求的多项式
  if((f0*f1)<0)
  {
   x2=x0;
   f2=f0;
  }
  else
  {
   x1=x0;
   f1=f0;
  }
 }while(fabs(f0)>=1e-6);
 printf("x=%6.2f/n",x0);
 return 0;

}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选