はこの考えてみましょう:なぜモジュラス演算子はC#で倍精度で動作しないのですか?
double x,y;
x =120.0;
y = 0.05;
double z= x % y;
を私はこれを試してみましたが、結果は0であることを期待しますが、0.04933333を出てきました。しかし
は、
x =120.0;
y = 0.5;
double z= x % y;
は確かにここで何が起こっている0
の正しい結果を与えたのですか?
Math.IEEERemainder(double, double)
を試しましたが、0にも戻っていません。ここで何が起こっているのですか?
また、脇に、C#で余りを見つける最も適切な方法は何ですか?
あなたが達成しようとしていることを知ることは興味深いでしょう。浮動小数点数でモジュラスを使うことは、答えがすでに述べられているので、決して良い考えではありません。 – VVS