SWUSTOJ0048
冰冰老婆镇楼
步入正题
首先简单介绍一下abs和fabs
abs是整数取绝对值,他对应的头文件是stdlib.h;
fabs是浮点数取绝对值,他对应的头文件是math.h;
简单用法如下
abs(a-b)>=1;
fabs(a-b)>=0.00001
开始题目
#include<stdio.h>
#include<math.h>
int main()
{
int a;//一定要记得这个是整数,不要和其他的一起double了。
double x1,x2;
scanf("%d",&a);
x1=1.0;
x2=1.0;//初始化,别少了。
do
{
x1=x2;
x2=0.5*(x1+a/x1);
}while(fabs(x2-x1)>=0.00001);//do while循环感觉更合适,有兴趣可以试试其他
printf("%.3lf\n",x2);//保留三位小数,和三位有效数字区分开。
return 0;
}
}
总之这题不算难,有着简单的递归思想,迭代法是计算机中很重要的方法,本题只是管中窥豹而已,总之AC愉快!
如有错误,敬请勘正。