题目:1241:二分法求函数的零点
题目描述:
有函数:f(x)=x5−15x4+85x3−225x2+274x−121
已知f(1.5)>0,f(2.4)<0 且方程f(x)=0在区间1.5,2.4 有且只有一个根,请用二分法求出该根。
输入:
(无)
输出:
该方程在区间1.5,2.4中的根。要求四舍五入到小数点后6位。
时空限制
1s / 64 MB
样例输入:
(无)
样例输出:
(无)
代码
cpp
#include<bits/stdc++.h>
using namespace std;
double l,r,mid;
double f(double x){
return x*x*x*x*x-15*x*x*x*x+85*x*x*x-225*x*x+274*x-121;
}
bool check(double mid){
return f(l)*f(mid)<=0;
}
int main(){
l=1.5,r=2.4;
while(r-l>=1e-8){
mid=(l+r)/2;
if(check(mid)) r=mid;
else l=mid;
}
printf("%.6lf",l);
return 0;
}
结果
