Если я выполняю следующее выражение в С#:
double i = 10*0.69;
i
: 6.8999999999999995
. Зачем?
Я понимаю, что числа, такие как 1/3, могут быть трудно представлять в двоичном формате, поскольку у него бесконечные повторяющиеся десятичные разряды, но это не относится к 0,69. И 0,69 легко может быть представлено в двоичном, одном двоичном числе для 69, а другое - в позиции десятичного разряда.
Как мне обойти это? Используйте тип decimal
?