请大神帮我看一下,这个程序,为什么编译没有错误运行的时候老是不对~

#include"stdio.h"#include"math.h"intmain(){floata,x1,x2;scanf("%f",&a);x1=a/2;for(;fa... #include"stdio.h"
#include"math.h"
int main()
{
float a,x1,x2;
scanf("%f",&a);
x1=a/2;
for(;fabs(x1-x2)>10e-5;)
{
x2=1.0/2.0*(x1+a/x1);
x1=x2;
}
printf("%.5f\n",x1);
return 0;
}
是牛顿的迭代法。谢谢~
展开
 我来答
上官元恒zsd
2013-05-18 · TA获得超过1770个赞
知道小有建树答主
回答量:3799
采纳率:28%
帮助的人:1178万
展开全部
那就是算法不对。。
更多追问追答
追问
本来输入2得出的是1.41412,但是我的老是1.50000,所以不知道哪里不对啊
追答
因为x1=x2;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式