#include<iostream>
#include<algorithm>
using namespace std;
double EPS=1e-6;
double f(double x) { return x*x*x - 5*x*x + 10*x - 80; }
int main()
{
double l=0;
double r=100;
double x=(l+r)/2;
while(fabs(f(x))>EPS)//我曾经一直错在忘了加fabs,其实如果不加的话一旦为负就出来了
{
if(f(x)>0)
{
r=x;
}
else
{
l=x;
}
x=(l+r)/2;
}
cout<<x<<endl;
}
二分法解方程
最新推荐文章于 2025-03-12 21:00:24 发布