我有一个 C++ 程序,我将两个数字相除,我需要知道答案是否为整数。我正在使用的是:
if(fmod(answer,1) == 0)
我也试过这个:
如果(楼层(答案)==答案)
问题是答案通常是 5 位数字,但有很多小数。例如,答案可以是:58696.000000000000000025658
并且程序认为是一个整数。
有什么办法可以使这项工作?
我在分double a/double b= double answer
(有时有超过 30 位小数)
谢谢!
编辑: a 和 b 是数千(约 100,000)的数字,然后将其提高到 2 和 3 的幂,加在一起并除以(根据复杂的公式)。所以我正在插入各种 a 和 b 值并查看答案。我只会保留使答案成为整数的 a 和 b 值。我得到的一个答案的一个例子是:218624,我上面的程序认为它是一个整数,但它确实是:218624.00000000000000000056982 所以我需要一个可以区分超过 20-30 个小数的整数的代码。