看板 java 關於我們 聯絡資訊
這應該是最典型的二分逼近法吧 void main() { double n = 100000; System.out.println(sqrt(n, 1, n)); } static double sqrt(double n, double start, double end) { double mid = (start + end) / 2; if (mid * mid == n) { return mid; } else if (mid == start || mid == end) { return mid; } else if (mid * mid < n) { return sqrt(n, mid, end); } else { return sqrt(n, start, mid); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.168.183.92
AmosYang:double 加上 == 等於 trouble XD 11/09 17:12
tkcn:我也覺得這樣 "好像" 會出問題 11/09 19:03
H45:不是好像,是 double == double 絕對是 trouble 11/09 19:12