理解:
实现:
根据牛顿迭代的原理,可以得到以下的迭代公式:X(n+1)=[X(n)+p/Xn]/2
一般性的编程方法如下:
double sqr(double n) {
double k=1.0;
while(abs(k*k-n)>1e-9) { //精度自己控制
k=(k+n/k)/2;
}
return k;
}
理解:
实现:
根据牛顿迭代的原理,可以得到以下的迭代公式:X(n+1)=[X(n)+p/Xn]/2
一般性的编程方法如下:
double sqr(double n) {
double k=1.0;
while(abs(k*k-n)>1e-9) { //精度自己控制
k=(k+n/k)/2;
}
return k;
}