牛顿迭代法求一个数的平方根
2012-09-26 20:25
176 查看
设r是f(x) = 0的根,选取x0作为r初始近似值,过点(x0,f(x0))做曲线y = f(x)的切线L,L的方程为y = f(x0)+f'(x0)(x-x0),
求出L与x轴交点的横坐标 x1 = x0-f(x0)/f'(x0),称x1为r的一次近似值。过点(x1,f(x1))做曲线y = f(x)的切线,并求该切线
与x轴交点的横坐标 x2 = x1-f(x1)/f'(x1),称x2为r的二次近似值。重复以上过程,得r的近似值序列,其中x(n+1)=x(n)-f(x(n))/f'(x(n)),
称为r的n+1次近似值,上式称为牛顿迭代公式。
下面利用牛顿迭代法求一个数a的平方根
设 f(x)=x^2-a ,f'(x)=2x
带入公式有 x1=x0-(x0*x0-a)/(2*x0)=1/2*(x0+a/x0)
也就是x(n+1)=1/2*(x(n)+a/x(n))
求出L与x轴交点的横坐标 x1 = x0-f(x0)/f'(x0),称x1为r的一次近似值。过点(x1,f(x1))做曲线y = f(x)的切线,并求该切线
与x轴交点的横坐标 x2 = x1-f(x1)/f'(x1),称x2为r的二次近似值。重复以上过程,得r的近似值序列,其中x(n+1)=x(n)-f(x(n))/f'(x(n)),
称为r的n+1次近似值,上式称为牛顿迭代公式。
下面利用牛顿迭代法求一个数a的平方根
设 f(x)=x^2-a ,f'(x)=2x
带入公式有 x1=x0-(x0*x0-a)/(2*x0)=1/2*(x0+a/x0)
也就是x(n+1)=1/2*(x(n)+a/x(n))
相关文章推荐
- 不用sqrt库函数求一个整数的平方根(牛顿迭代法)
- 牛顿迭代法求一个数的立方根、平方根
- 求一个数的平方根—牛顿迭代法
- 求一个非负数的平方根--sqrt实现
- 将一个整数写成两个整数的平方和,如5=1*1+2*2。随机输入几个二位数输出满足条件的整数
- 随意写一个十进制的自然数(如2583),然后求这个数目字的平方和(2^2+5^2+8^2+3^2=102),对得出来的数(102)再用此法处理(1^2+0^2+2^2=5),并一直照此进行下去(5^2
- 牛顿迭代法求求一个数的算术平方根
- 我也写了一个牛顿迭代法,貌似不需要特殊处理溢出的情况 class Solution { public...
- javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
- 谷歌面试题:判断一个自然数是否是某个数的平方
- 自守数定义:一个自然数的平方的尾数等于该数本身。例如:25=625,76=5776,9376=87909376,则25、76、9376均是自守数。试建立一个类Self,求出指定范围内的自守
- 求方程的近似解,不用库函数求一个数的平方根
- 开一个数平方的小程序
- 定义方法求一个数的平方
- 判断一个自然数是否是某个数的平方
- :有一个卡车司机肇事后想逃跑,但是被三个人看见了其车牌号,但是都没看全, 甲说:车牌的前两位是一样的;乙说:车牌的后两位是一样的,但与前两位不一样; 丙说:车牌是一个数字的平方,请编写一个程序计算
- 判断一个自然数是否是某个数的平方。当然不能使用开方运算—谷歌
- 牛顿迭代法求数的平方根
- python编写简单计算器,计算一个数的平方
- 牛顿迭代法求解平方根