牛顿迭代法求平方根
程序员文章站
2024-03-18 08:37:28
...
方法描述:
首先随便猜一个近似值x,然后迭代地令x=(x+a/x)/2,迭代个六七次后x的值就已经相当精确了。
代码实现:
int mysqrt(int x) {
if (x == 0) return 0;
double last = 0;
double res = 1;
while (abs(last-res)>1e-9)
{
last = res;
res = (res + x / res) / 2;
}
return int(res);
}