C语言,用迭代法求x=根号下a
求平方差的迭代公式为Xn+1=1/2(Xn+a/Xn)。要求两次求出的x的差的绝对值小于10-5(十的负5次幂)各位大侠帮帮忙啊另外帮忙解释一下什么是迭代法呗,我们课本上...
求平方差的迭代公式为Xn+1=1/2(Xn+a/Xn)。要求两次求出的x的差的绝对值小于10-5 (十的负5次幂) 各位大侠帮帮忙啊
另外帮忙解释一下什么是迭代法呗,我们课本上面没有。麻烦啦! 第一位回答者x=a是怎么回事? 展开
另外帮忙解释一下什么是迭代法呗,我们课本上面没有。麻烦啦! 第一位回答者x=a是怎么回事? 展开
展开全部
float mysqrt(float a)
{
float x = a/2;
float d = 10000;
while ( d>1e-5 || d<-1e-5)
{
d = x;
x = (x + a/x) /2 ;
d -= x;
}
return x;
}
{
float x = a/2;
float d = 10000;
while ( d>1e-5 || d<-1e-5)
{
d = x;
x = (x + a/x) /2 ;
d -= x;
}
return x;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
using namespace std;
int main()
{
double x=1000,a=1;
cout<<"a="; cin>>a;
do x/=2,x+=a/(4*x);
while (x/2-a/(2*x)>1e-5
|| x/2-a/(2*x)< -1e-5);
cout<< "sqrt("<<a<<")="
<<x<<endl; return 0;
}
using namespace std;
int main()
{
double x=1000,a=1;
cout<<"a="; cin>>a;
do x/=2,x+=a/(4*x);
while (x/2-a/(2*x)>1e-5
|| x/2-a/(2*x)< -1e-5);
cout<< "sqrt("<<a<<")="
<<x<<endl; return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询