AcWing 790. 数的三次方根(Java解法)
原题链接
简单
作者:
是晴天呀
,
2021-04-15 19:50:46
,
所有人可见
,
阅读 395
import java.math.BigDecimal;
import java.util.Scanner;
public class Main {
static Scanner sc=new Scanner(System.in);
static double x=sc.nextDouble(); //要读入的数据是浮点数!!不要思维定式什么都int!!
public static boolean check(double i) {
return i*i*i>=x;
}
public static void main(String[] args) {
double l=-10000;
double r=10000;
while(r-l>1e-8) {
double mid=(l+r)/2; //注意这里要声明成double类型的!!
if(check(mid)) {
r=mid;
}else {
l=mid;
}
}
System.out.println(BigDecimal.valueOf(l).setScale(6,BigDecimal.ROUND_HALF_UP));
}
}