用牛顿迭代法求浮点数的平方根
2010-08-19 13:31
260 查看
比如我们要求a的平方根,首先随便猜一个近似值x,然后不断令x等于x和a/x的平均数,迭代几次后x的值就已经相当精确了。
看下面(假设a=2,我们求2的平方根):
1.先随便猜个数,比如我猜2的平方根为7
( 7 + 2/7 ) / 2 = 3.64287514
( 3.64287514 + 2/3.64287514 ) / 2 = 2.095946017
......
......
( n+ 2/n) / 2 = 1.414....
下面是代码:
看下面(假设a=2,我们求2的平方根):
1.先随便猜个数,比如我猜2的平方根为7
( 7 + 2/7 ) / 2 = 3.64287514
( 3.64287514 + 2/3.64287514 ) / 2 = 2.095946017
......
......
( n+ 2/n) / 2 = 1.414....
下面是代码:
#define ABS(VAL) (((VAL)>0)?(VAL):(-(VAL))) //用牛顿迭代法求浮点数的平方根 float mysqrt(float x) { float g0,g1; if(x==0) return 0; g0=x/2; g1=(g0+x/g0)/2; while(ABS(g1-g0)>0.01) { g0=g1; g1=(g0+(x/g0))/2; } return g1; }
相关文章推荐
- 用牛顿迭代法求浮点数的平方根
- 牛顿迭代法求一个数的立方根、平方根
- 算法 - 牛顿迭代法求平方根
- 牛顿迭代法求一个数的平方根
- 用牛顿迭代法求某正数n的平方根
- 牛顿迭代法求解平方根
- 牛顿迭代法求数的平方根
- 牛顿迭代法是如何求平方根的
- 利用牛顿迭代法求平方根 .
- 牛顿迭代法输出n的平方根
- 求一个数的平方根—牛顿迭代法
- 用牛顿迭代法求某正数n的平方根
- javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
- 不用sqrt库函数求一个整数的平方根(牛顿迭代法)
- 求平方根的方法(牛顿迭代法和二分法)
- 牛顿迭代法应用——求数的平方根和立方根
- 编程能力提高-----用牛顿迭代法求输入的数的平方根
- 牛顿迭代法快速求平方根
- 牛顿迭代法快速寻找平方根
- 你应该知道PHP浮点数知识