11
浮動小数点の比較はどのようにすればよいですか?
私は現在、次のようなコードを書いています。 double a = SomeCalculation1(); double b = SomeCalculation2(); if (a < b) DoSomething2(); else if (a > b) DoSomething3(); そして他の場所では私は平等をする必要があるかもしれません: double a = SomeCalculation3(); double b = SomeCalculation4(); if (a == 0.0) DoSomethingUseful(1 / a); if (b == 0.0) return 0; // or something else here つまり、浮動小数点演算がたくさん行われているので、条件についてさまざまな比較を行う必要があります。この文脈ではそのようなことは無意味なので、私はそれを整数数学に変換することはできません。 このようなことが起こる可能性があるため、浮動小数点の比較は信頼できない可能性があることを前に読みました。 double …