java语言程序设计第十版(Introduce to java) 课后习题 chapter6-22
自己纯手工,欢迎讨论
package chapter6;
public class T22 {
public static void main(String[] args) {
System.out.println(sqrt(10000));
}
public static int sqrt(long n) {
double last = 1.0;
double next = (last + n / last) / 2;
while (true) {
if ((last - next < 0.0001 && last - next > -0.0001) || (next - last < 0.0001 && next - last > -0.0001)) {
break;
}
last = next;
next = (next + n / next) / 2;
}
return (int)last;
}
}