题解 | #求解立方根#
求解立方根
https://www.nowcoder.com/practice/caf35ae421194a1090c22fe223357dca
// mark一下
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextLine()) {
double x = Double.valueOf(in.nextLine());
double left = Math.min(x, -1);
double right = Math.max(x, 1);
double ans = (double) right;
while (right - left > 0.001) {
double mid = (left + right) / 2;
double midThree = (double) mid * mid * mid;
if (midThree > x) {
right = mid;
} else if (midThree < x) {
left = mid;
} else {
ans = mid;
}
}
System.out.printf("%.1f", right);
}
}
}