C语言之基本算法11—牛顿迭代法求平方根

原创 2015年07月07日 12:57:43
//迭代法
/*
==================================================================
题目:牛顿迭代法求a的平方根!迭代公式:Xn+1=(Xn+a/Xn)/2.
==================================================================
*/
#include<stdio.h>
#include<math.h>
main()
{
float a,x0,x1;
int flag=1;
while(flag)
{
printf("a=");
scanf("%f",&a);
if(a>=0)
flag=0;
else
printf("你所输入的数不能求平方根,请重试!\n_______________________________\n\n");
}
x0=1;
x1=x0+1;
while(fabs(x0-x1)>=1e-10)
{
x0=x1;
x1=0.5*(x0+a/x0);
}
printf("%.2f的平方根是:%.2f\n",a,x1);
}
/*
==================================================================
评:实质是迭代法,先输入符合条件的数a,给x0和x1赋值,使得差的绝对值
大于10的-10次方。当差大于等于10的-10次方时使用迭代公式使x0和x1的差
小于10的-10次方。则平方根就是x1或x0.
==================================================================
*/


版权声明:博主文章可以被非商用转载,但请务必注明出处,因水平有限,难免出错,在此免责。

相关文章推荐

算法#01--素数和牛顿迭代法求平方根

切线法

【算法王道】二分法和牛顿迭代法求平方根

若求x的平方根,就是在0到x所有正值之间肯定有个guess^2约等于x,然后这个误差值epsilon可以自定义。 二分法很简单,我就直接贴代码了 void sqrtBI(float x,float...

java 利用牛顿迭代法求平方根和立方根,不使用Math类

最近遇到一个题目,就是不使用Math方法去求解一个数的立方根和平方根,搜索了好多,现在记录下自己掌握的方法。 首先,在编码之前,我们得熟悉 什么是牛顿迭代法。下面我为大家找了两处链接。大家可以去看一下...

牛顿迭代法求平方根

/* 试建立一个类 TRI,给出三角形的三边长,求三角形的面积.规定只能调用类自身的函数求平方根(不能使用库函数 sqrt()).具体要求如下: (1) 私有数据成员 double a,b,c...

利用牛顿迭代法求平方根 .

求n的平方根,先假设一猜测值X0 = 1,然后根据以下公式求出X1,再将X1代入公式右边,继续求出X2…通过有效次迭代后即可求出n的平方根,Xk+1 先让我们来验证下这个巧妙的方法准确性,来...

牛顿迭代法求平方根

求平方根可以用二分的思路。二分其实也挺快的,不过还有更快的算法求平方根——牛顿迭代法。 如果我们要求a的平方根,首先令f(x)=x^2-a;那么我们的目的就是求得x使得f(x)=0; 在网上找了一张图...
  • w20810
  • w20810
  • 2015-10-11 10:13
  • 1452

利用牛顿迭代法求平方根

http://blog.punkid.org/2008/02/28/compute-the-square-root-via-newtons-iteration/ 求n的平方根,先假设...

牛顿迭代法求数的平方根

转自:http://www.nowamagic.net/librarys/veda/detail/2268 牛顿迭代法(Newton's method)又称为牛顿-拉夫逊方法(Newton-...

牛顿迭代法求数的平方根

牛顿法最初由艾萨克·牛顿在《流数法》(Method of Fluxions,1671年完成,在牛顿死后的1736年公开发表)。约瑟夫·拉弗森也曾于1690年在Analysis Aequationu...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)