
输入格式:

输出格式:
在一行中输出该多项式在该区间内的根,精确到小数点后2位。
输入样例:
3 -1 -3 1
-0.5 0.5
输出样例:
0.33
代码如下:
#include<stdio.h>
#include<math.h>
double a0,a1,a2,a3;
double f(double a)
{
return a3*pow(a,3)+a2*pow(a,2)+a1*a+a0;
}
int main()
{
double a,b;
scanf("%lf%lf%lf%lf",&a3,&a2,&a1,&a0);
scanf("%lf%lf",&a,&b);
double x=(a+b)/2.0;
while((b-a)>=0.0001)//关键
{
if(f(x)==0)
break;
else if(f(x)*f(a)>0)
a=x;
else if(f(x)*f(b)>0)
b=x;
x=(a+b)/2.0;
}
printf("%.2lf",x);
return 0;
}
原文:https://www.cnblogs.com/yunners/p/12488098.html