牛顿法求平方根

今天要解决的是如何用牛顿法求一个数的平方根:

来看看我们的代码实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package com.github.xiongdi.study;

public class Calc {
// 设定一个误差值
private double err = 0.001;

public Double sqrt(int a) {
// 设定一个初始的值
double x = a / 2;

// 循环的结束条件是误差小于误差值
while (Math.abs(x * x - a) > err) {
// 牛顿迭代式
x = (x + a / x) / 2;
}
return x;
}
}