您的位置:首页 > 其它

CODE[VS]-判断浮点数是否相等-浮点数处理-天梯青铜

2016-07-14 20:17 411 查看
题目描述 Description
给出两个浮点数,请你判断这两个浮点数是否相等

输入描述 Input Description
输入仅一行,包含两个浮点数

输出描述 Output Description
输出仅一行,如果相等则输出yes,否则输出no。

样例输入 Sample Input
2.980000001 2.9800000000001

样例输出 Sample Output
yes

数据范围及提示 Data Size & Hint
我们一般认为两个浮点数相等,当且当他们之间的误差不超过1e-8。

思路:有由于是浮点数,需要精确比较,可以拿两个浮点数相减取绝对值与1e-8比较,如果小于等于这个精确位数,即这两个浮点数相等

代码如下:

#include <stdio.h>
#include <math.h>
int main()
{
double a,b;
scanf("%lf%lf",&a,&b);
if(fabs(a-b)<=1e-8)//fabs是取绝对值
{
printf("yes\n");
}
else if(a!=b) printf("no\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: