A+B Problem III

A+B Problem III

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
样例输入
样例输出

这题比较好,一直不知道出错在哪儿,后来查资料知道了此题关键是数字在计算机内存储形式问题,如: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]