描述: 求解一个数的平方根,返回值不一定指的是整数
import java.util.*;
public class Main {
static Scanner in = new Scanner(System.in);
static double sqrt(double t) {
double low=0;
double high=t;
double mid=low+(high-low)/2;
while(high-low>1e-7) {
if(mid*mid>t)
high=mid;
else if(mid*mid<t)
low=mid;
else if(Math.abs(mid*mid-t)<1e-7) {
return mid;
}
mid=low+(high-low)/2;
}
return mid;
}
public static void main(String[] args) {
while(in.hasNext()){
double n = in.nextDouble();
System.out.println(sqrt(n));
}
}
}