Parmendra choudhary Ответов: 3

Как разделить двойное число.


Мой двухместный номер:

двойной inputValue = 48.4866666;

Я хочу: inputValue = 48,48

inputValue = математика.Раунд (inputValue, 2);

Что я уже пробовал:

inputValue = математика.Round (inputValue, 2); но его дают 48,49, а мне нужно 48,48

3 Ответов

Рейтинг:
20

Karthik_Mahalingam

проверьте эту аналогичную тему с решенными ответами
c# - получить последние 2 десятичных знака без округления [^]


Рейтинг:
20

OriginalGriff

Воспользуйся Математика.Метод Усечения (Double) (System)[^]

inputValue = Math.Truncate(inputNumber * 100.0) / 100.0;


Рейтинг:
11

Jochen Arndt

Round(Double, Int32) округляется до ближайшего. Если вам нужен другой режим округления используйте Математика.Метод Round (Double, Int32, MidpointRounding) (Система)[^].
В вашем случае:

inputValue = Math.Round(inputValue, 2, MidpointRounding.AwayFromZero);

Если вы знаете, что входное значение всегда является действительным и положительным, вы также можете добавить половину значения позиции округления:
inputValue = Math.Round(inputValue + 0.005, 2);
Для отрицательных чисел вы должны вычесть.