← Назад

Математические операции(не относится к S#)

В общем появилась проблема с обычными операциями сложение и вычитание - искажается результат. Например:


            double va1 = 17.1;
            double va2 = 17.2;
            double re2 = va2 - va1;

на выходе получаю re2 = 0.099999999999997868 что это может быть?

Комментарии (2)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

anothar
anothar

Это проблема связанная с представлением double(короче это нормально). Чтобы от этого избавиться используйте округление Math.Round(re2,2), либо вместо double используйте decimal.

skuvv
skuvv Автор

Спасибо за наводку. Странно что раньше не замечал такого.