首页 > 其他 > 详细

理工之 A+B Problem III

时间:2015-07-24 09:07:00      阅读:127      评论:0      收藏:0      [点我收藏+]

描述

        求A+B是否与C相等。

输入
T组测试数据。
每组数据中有三个实数A,B,C(-10000.0<=A,B<=10000.0,-20000.0<=C<=20000.0)
数据保证小数点后不超过4位。

输出
如果相等则输出Yes
不相等则输出No
样例输入
3
-11.1 +11.1 0
11 -11.25 -0.25
1 2 +4
样例输出
Yes
Yes
No

 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 int main()
 6 {   int n;
 7     double a,b,c;
 8     cin>>n;
 9     while(n--)
10     {
11       cin>>a>>b>>c;
12       if(a+b-c>-0.0001&&a+b-c<0.0001) cout<<"Yes"<<endl;
13       else cout<<"No"<<endl;
14     }
15     return 0;
16 }

 

关键在于:if(A+B-C>-0.0001&&A+B-C<0.0001)     //数据保证小数点后不超过4位,也就是决定了允许有一定的误差,浮点运算存在误差在(-0.0001—0.0001)。

如果不考虑这一点就会出错。

理工之 A+B Problem III

原文:http://www.cnblogs.com/nynu-ycg6/p/4672327.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!