function lfg(x){
if(x==0){ return 0; }
let min = 0,max = x;
if(x<0){
min = x;
max = 0;
}
while(min < max){
let mid = (min + max) / 2; //二分法
let tmp = mid*mid*mid;
if (tmp > x) {
max = mid;
}
else if (tmp < x) {
min = mid;
}
else {
return mid;
}
//两数之差精确到0.01就可以了
if(parseFloat((mid*mid*mid)-x) < parseFloat(0.01) && (mid*mid*mid)-x > 0){
return mid;
}
}
}
console.log(lfg(66)); //输出4.041412353515625
二分法求立方根
最新推荐文章于 2023-03-25 16:10:12 发布