二分求x的平方根保留4位小数
2023-05-15 本文已影响0人
盼旺
import java.text.DecimalFormat;
class Solution {
public static void main(String[] args) {
System.out.println(sqrt(8));
}
public static double sqrt(double x) {
double left = 0, right = x;
double mid = left + (right - left) / 2;
while (Math.abs(x - mid * mid) > 0.00001) {
mid = left + (right - left) / 2;
if (mid * mid == x) {
return mid;
} else if (mid * mid < x) {
left = mid;
} else {
right = mid;
}
}
DecimalFormat df = new DecimalFormat("#.0000");
return Double.parseDouble(df.format(mid));
}
}
2.8284