Рассмотрим это:
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. Что здесь происходит?
Также, как в стороне, какой наиболее подходящий способ найти остаток в С#?