NYOJ-477 A+B Problem III

本文探讨了在编程中如何正确处理浮点数相加问题,特别是在A+B是否等于C的情况下,通过实例展示了浮点数陷阱,并提供了解决方案。

A+B Problem III

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述
求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

       

浮点数陷阱     浮点运算存在误差在(-0.0001—0.0001);所以要注意啊。



01.#include<iostream>
02.#include<cmath>
03.using namespace std;
04.int main()
05.{
06.int t;
07.cin>>t;
08.while(t--)
09.{
10.double a,b,c;
11.cin>>a>>b>>c;
12.if(fabs(c-(a+b))<1e-6)
13.cout<<"Yes"<<endl;
14.else
15.cout<<"No"<<endl;
16.}
17.return 0;
18.}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值