#include <iostream>
using namespace std;
#include <math.h>
double mySqrt(int m) //定义求解公式
{
double x1,x0;//定义两个数当这两个数相等时就是我们要求的值
x0=m ;//任意定义x0的值,也可以等于二分之一m
x1=(3*x0/4)+m/(4*x0*x0*x0);//迭代公式,本题求的是x的四次方根 ,这里也可以是任意一个数
while(fabs(x0-x1)>0.000001)//当x1和x0不相等的时候 再次利用迭代公式知道先x1=x0
{
x0=x1;
x1=(3*x0/4)+m/(4*x0*x0*x0);
}
return x1;//返回x1的值
};
int main()
{
double xx;
xx=mySqrt(16);
cout<<xx;
}
迭代公式求x的n次方根,求16的4次方根等于2
最新推荐文章于 2022-04-25 10:58:32 发布