5-18 二分法求多项式单根 (20分)

来源:互联网 发布:java jbpm工作流实例 编辑:程序博客网 时间:2024/05/16 08:04
#include <stdio.h>double f(double x);double a1,a2,a3,a4;int main(){    double a,b;scanf("%lf %lf %lf %lf",&a1,&a2,&a3,&a4);scanf("%lf %lf",&a,&b);double left,right,mid;left=a;right=b;if(f(left)==0){printf("%.2f",left);return 0;}else if(f(right)==0){printf("%.2f",right);return 0;}while(left<=right-0.001&&f(left)*f(right)<0){mid=(left+right)/2;if(f(mid)==0){printf("%.2f",mid);return 0;}if(f(mid)*f(left)>0){left=mid;}else{right=mid;}}mid=(left+right)/2;printf("%.2f",mid);return 0;}double f(double x){double result;result=a1*x*x*x+a2*x*x+a3*x+a4;return result;}

0 0
原创粉丝点击