← Zurück

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

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


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

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

War dieses Thema hilfreich?

Thema teilen

Kommentare (2)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

anothar
anothar

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

skuvv
skuvv Autor

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