已知 sqrt(2)约等于 1.414,那么就可以在(1.41, 1.42)区间做二分.设l = 1.41, r = 1.42, mid = (r+l)/2
循环退出条件:r-l <= 精度
public class Main {
public static void main(String[] args) {
double l = 1.41;
double r = 1.42;
double mid = (r+l)/2;
double flag = 0.0000000001;
while(r-l > flag){
mid = (r+l)/2;
if(mid*mid < 2)
l = mid;
else
r = mid;
}
System.out.println(mid);
}
}