编写程序:用迭代法求x=根号a。
求平方根的迭代公式为Xn+1=1/2(Xn+a/Xn),要求前后两次求出的x的差的绝对值小于10的负5次方。...
求平方根的迭代公式为Xn+1=1/2(Xn+a/Xn),要求前后两次求出的x的差的绝对值小于10的负5次方。
展开
4个回答
展开全部
#include"stdio.h"
#include"math.h"
void main()
{
float x1=1,x2,a;
printf("input a\n");
scanf("%f",&a);
x2=a;
while(fabs(x1-x2)>=1e-5)
{
x1=x2;
x2=(x1+a/x1)/2;
}
printf("%f,%f",x1,x2);
}
#include"math.h"
void main()
{
float x1=1,x2,a;
printf("input a\n");
scanf("%f",&a);
x2=a;
while(fabs(x1-x2)>=1e-5)
{
x1=x2;
x2=(x1+a/x1)/2;
}
printf("%f,%f",x1,x2);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.
一般来说,迭代法的收敛结果与初值有一定关系,但这里因为函数
x=a^(1/2)
是单调的,所以这里迭代法的收敛性与初值无关。
2.
这里的初值决定了迭代次数,即初值与求值的速度有关。
3.
lz感兴趣的话,可以看一些“数值分析”“计算方法”有关的书籍。
一般来说,迭代法的收敛结果与初值有一定关系,但这里因为函数
x=a^(1/2)
是单调的,所以这里迭代法的收敛性与初值无关。
2.
这里的初值决定了迭代次数,即初值与求值的速度有关。
3.
lz感兴趣的话,可以看一些“数值分析”“计算方法”有关的书籍。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我看不懂啊..公式打清楚一点嘛.或者截图.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询