简单的二分问题,通过缩小l和r (即r-l < 1e-7) 将所求的结果夹出来
#include <iostream>
#include<iomanip>
using namespace std;
// 1. 声明左右边界,并且赋值
double l = -10000;
double r = 10000;
double mid = (l+r)/2;
int main(){
double num;
cin>>num;
while(r - l > 1e-7){
mid = (l+r)/2;
//2. 比价中间值和目标值缩小边界
if(mid*mid*mid >= num) r = mid;
else l = mid;
}
// 3.设置输出格式为6位小数
cout<<fixed<<setprecision(6)<<l;
return 0;
}