JAva実装オープンルート番号
主な考え方
ニュートン反復法により平方根を計算した.さあ、コードbaを見てみましょう.
アルゴリズムを改良する...
ニュートン反復法により平方根を計算した.さあ、コードbaを見てみましょう.
private static double sqrt(double c) {
if (c < 0)
return Double.NaN;
double jingdu = 1e-15;
double t = c;
while (Math.abs(c - t * t) > jingdu)
t = (c / t + t) / 2.0;//
return t;
}
アルゴリズムを改良する...
public static double sqrt(double m) {
double i = 0;
int k = 0;
while ((i * i) <= m)
i += 0.1;
for (int j = 0; j < 10; j++) {
i = (m / i + i) / 2;
}
return i;
}