H5W3
当前位置:H5W3 > 其他技术问题 > 正文

编写程序,它的功能是:应用迭代算法求a的平方根,求a的平方根的迭代公式如下:x1=1/2(x0+a/x0),例如a为2是,平方根值为:1.414214

编写程序如下,为什么只有4、9、16……这样类型的才能出来结果呢?哪里出错了?
#include
#include
main()
{
float a;
float x0,x1;
scanf(“%f”,&a);
x0=a / 2;
x1=(x0+a/x0)/2;
do
{
x1=x0;
x1=(x0+a/x0)/2;
}
while(fabs(x1 – x0) >= 1e-5);
printf(“%.5f”,x1);
return 0;
}

回答

do里面 x1 = x0 改成 x0 = x1,你这不重新赋值怎么实现功能

未经允许不得转载:H5W3 » 编写程序,它的功能是:应用迭代算法求a的平方根,求a的平方根的迭代公式如下:x1=1/2(x0+a/x0),例如a为2是,平方根值为:1.414214

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址