这个题目有点坑,p和q直接除以100,会存在精度问题,14.1除以100,调试的时候除以100.0直接变成14.09999999999999999
#include<iostream>
using namespace std;
int main()
{
int T;
while(scanf("%d", &T) != EOF )
{
while(T--)
{
double a, b;
scanf("%lf%lf", &a, &b);
int i;
for( i=0; ; i++ )
{
if( (int)(i*b)/100 - (int)(i*a)/100 == 1)
break;
}
printf("%d\n", i);
}
}
return 0;
}
本文深入探讨了编程中出现的精度问题,特别是浮点数除法带来的误差,并提供了解决方案,通过实例展示了如何正确处理浮点运算以避免精度损失。
1238

被折叠的 条评论
为什么被折叠?



