# include & ltmath.h & gt
使用?命名空間?std
雙倍?f(雙?X){//方程?
回歸?2 * x * x * x-4 * x * x+3 * x-6;
}
雙倍?bsearch(double?l,雙份?r,雙?p){?//二進制近似?
雙倍?ans?=?(l+r)/2;
while(fabs(f(ans))& gt;p){
if(f(ans)*f(l)>0){
l?=?ans
}否則{
r?=?ans
}
ans?=?(l+r)/2;
}
回歸?ans
}
int?main(int?argc,?char**?argv)?{
cout & lt& ltbsearch(0,3,0.0001)& lt;& ltendl
回歸?0;
}