首页 > 代码库 > 用迭代法求平方根

用迭代法求平方根

   输入代码:

/* 
*Copyright (c)2014,烟台大学计算机与控制工程学院 
*All rights reserved. 
*文件名称:sum123.cpp 
*作    者:林海云 
*完成日期:2014年12月29日 
*版 本 号:v2.0 
* 
*问题描述:用迭代法求 。求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001。输出保留3位小数
*程序输入:整数X 
*程序输出: X的平方根
*/  
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    double a,x,y;
    cin>>a;
    if(a<0)
    {
        cout<<"负数没有平方根"<<endl;
    }
    else
    {
        x=1;
        y=(x+a/x)/2;
        while(x!=y)
        {
            x=y;
            y=(x+a/x)/2;
        }
        cout<<a<<"的平方根为:"<<setiosflags(ios::fixed)<<setprecision(3)<<x<<endl;
    }
    return 0;
}

运行结果:

技术分享

用迭代法求平方根