您的位置:首页 > 其它

用牛顿迭代法求某正数n的平方根

2015-03-14 09:35 169 查看
求n的平方根,先假设一猜测值X0 = 1,然后根据以下公式求出X1,再将X1代入公式右边,

继续求出X2…通过有效次迭代后即可求出n的平方根,

Xk+1=(Xk+n/Xk)/2

(当Xk+1-Xk绝对值小于0.00001停止迭代,结果就可以保留相应的几位小数)

#include <iostream>
#include <math.h>
using namespace std;
int fun(int n,double x1)
{
double x2;
x2=(x1+n/x1)/2;
double a=fabs(x2-x1);
if(a>0.00001)
{
x1=x2;
return fun(n,x1);
}
else
{
cout<<x2<<endl;
}

}
int main ()
{
int n;
double x1=1;
cin>>n;
fun(n,x1);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐