Я пытаюсь выяснить, какой лучший способ проанализировать десятичное значение. В настоящее время я использую Math.Round
, но это не работает для входных данных.Усечение десятичного числа до десятичной цифры
Я хочу, чтобы получить целочисленную часть, а затем первую цифру после десятичной дроби.
var value = 25.987817685360218441503885773M;
return Math.Round(value, 1);
возвращается 26
, но я хотел бы вернуться 25.9
.
Вы уверены, что хотите округлить '25.987817685360218441503885773M' до' 26.9'? Это не так, как работает округление. – ekad
Вы хотите сказать 25.9? Кроме того, что вы ожидаете от 25.887 до раунда? В принципе, вы просто хотите усечь то, что есть после первого десятичного знака, или вам нужны специальные случаи при округлении до следующего целого числа? –
Документация: http://msdn.microsoft.com/en-us/library/System.Math.Round(v=vs.110).aspx –