用迭代法求 。
求平方根的迭代公式为: X[n+1]=1/2(X[n]+a/X[n]) 要求前后两次求出的得差的绝对值少于0.00001。 输出保留3位小数
输入:
a
输出:
a的平方根
输入:
4
输出:
2.000
先设置X初值为 a / 2 , or a/3 or a/4 or a/1, 在进行下面的代码编译。就是X的初值不是唯一的。
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
int main()
{ double a,x1,x2,t;
cin>>a;
x1=a;
do
{
x2=(x1+a/x1)/2;
t=x1;
x1=x2;
}while(fabs(x2-t)>=0.00001);
cout<<fixed<<setprecision(3)<<x2<<endl;
return 0;
}