码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2016-07-14 21:35:30      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:

题目描述 Description
给出两个浮点数,请你判断这两个浮点数是否相等
输入描述 Input Description
输入仅一行,包含两个浮点数
输出描述 Output Description
输出仅一行,如果相等则输出yes,否则输出no。
样例输入 Sample Input
2.980000001 2.9800000000001
样例输出 Sample Output
yes
数据范围及提示 Data Size & Hint
我们一般认为两个浮点数相等,当且当他们之间的误差不超过1e-8。
 
思路:有由于是浮点数,需要精确比较,可以拿两个浮点数相减取绝对值与1e-8比较,如果小于等于这个精确位数,即这两个浮点数相等
 
代码如下:
 1 #include <stdio.h>
 2 #include <math.h>
 3 int main()
 4 {
 5     double a,b;
 6     scanf("%lf%lf",&a,&b);
 7     if(fabs(a-b)<=1e-8)//fabs是取绝对值
 8     {
 9         printf("yes\n");
10     }
11     else if(a!=b) printf("no\n");
12     return 0;
13 } 

 

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

标签:

原文地址:http://www.cnblogs.com/geek-007/p/5671619.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!