欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

牛顿迭代法

程序员文章站 2022-06-03 12:24:40
...

如何用牛顿迭代法求一个数的平方根(立方根)

  对于
  对于该方程的求解,可以用牛顿迭代法求近似解

  设r是f(x) = 0的根,选取x0作为r初始近似值,过点(x0,f(x0))做曲线y = f(x)的切线L,L的方程为
  求出L与x轴交点的横坐标

  称x1为r的一次近似值。
  重复以上过程,得r的近似值序列,其中
  称为r的n+1次近似值,上式称为牛顿迭代公式。

  那么对于sqrt(n)函数,就可以通过这样的迭代公式来实现:

另外,附latex常用写法:
http://www.*.org/info/symbols/symbols.htm

代码

double sqrt(double n) { 
    double k=1.0; 
    while(abs(k*k-n)>1e-9) { 
        k=(k+n/k)/2; 
    } 
    return k; 
}

转载于:https://www.jianshu.com/p/0a0e58e36165