浮点数二分

#include<iostream>
using namespace std;
int main(){
    double x;
    cin>>x;
    double l=-10000,r=10000;//先确定边界
    while(r-l>1e-8){//比保留小数位数多两位保险
        double mid=(l+r)/2;
        if(mid*mid*mid>=x) r=mid;
        else l=mid;//浮点数二分特征
    }
    printf("%.6f",l);
    return 0;
}

 

posted @ 2022-01-20 17:20  zzq12138  阅读(46)  评论(0)    收藏  举报