A-A+

A+B Problem III

2012年08月02日 语言入门 暂无评论 阅读 52 次

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

这题比较好,一直不知道出错在哪儿,后来查资料知道了此题关键是数字在计算机内存储形式问题,如:1在计算机内部形式是0.99999·····所以会产生小数点后精度的一点点偏差,导致程序出错!
[cpp]
#include "stdio.h"
#include "math.h"
int main()
{
int t;double a,b,c;scanf("%d",&t);
while(t--)
{
scanf("%lf%lf%lf",&a,&b,&c);
printf("%sn",fabs(a+b-c)<=0.00001?"Yes":"No"); } return 0; } [/cpp]

标签:

给我留言

Copyright © C/C++程序员之家 保留所有权利.   Theme  Ality 浙ICP备15011757号-3

用户登录