>>87
浮動小数点数でも整数を表すときは
誤差は生まれないと思うんだけど、どうなんだろう。

if (x == (int)x)

は、xが整数で有効桁数内に収まっていれば必ず成立するんじゃないかと。
そもそも誤差って、小数点以下を2^-1, 2^-2, ... で表すから生まれるんだよね?
誰か詳しく知ってる人がいたら教えてください。