如何在c ++中检查1/a == 1/b + 1/c?

Fil*_*und -4 c++

我正试图检查是否1/a == 1/b + 1/c在c ++中.
a,b并且c是正整数,a介于1和10000之间.

由于浮点精度,我目前得到错误的答案,我找不到一种方法来进行这种比较而不使用浮点数.

我如何得到正确的答案?

lej*_*lot 14

我想这会对你有所帮助:

1/a = 1/b + 1/c

1 = a/b + a/c

1 =(ac + ab)/ bc

bc = ac + ab #no更长时间需要分裂


Mik*_*our 9

将等式的两边乘以a*b*c得到

b*c == a*c + a*b
Run Code Online (Sandbox Code Playgroud)

  • @ZacHowland:如果有任何零,那么没有"正确"的答案,所以无论这个等式给出的答案都是如此.但问题确实指明了"正整数". (2认同)