Десятичное/двойное целое - округление (не только до ближайшего) Как бы вы округлили десятичное или float до целого числа. Например... 0.0 => 0 0.1 => 1 1.1 => 2 1.7 => 2 2.1 => 3 Etc. Ответ 1 Простой, используйте Math.Ceiling: var wholeNumber = (int)Math.Ceiling(fractionalNumber); Ответ 2 Что-то вроде этого? int myInt = (int)Math.Ceiling(myDecimal); Ответ 3 Math.Ceiling не работает для меня, я использую этот код и эту работу:) int MyRoundedNumber= (int) MyDecimalNumber; if (Convert.ToInt32(MyDecimalNumber.ToString().Split('.')[1]) != 0) MyRoundedNumber++; и если вы хотите округлить отрицательное число до нуля, например, от -1,1 до -2, используйте этот int MyRoundedNumber= (int) MyDecimalNumber; if (Convert.ToInt32(MyDecimalNumber.ToString().Split('.')[1]) != 0) if(MyRoundedNumber>=0) MyRoundedNumber++; else MyRoundedNumber--; Ответ 4 Прежде чем говорить, что это не работает, вы должны проверить, что ВСЕ ЗНАЧЕНИЯ в операции являются двойными. Вот пример в С#: int speed= Convert.ToInt32(Math.Ceiling((double)distance/ (double)time)); Ответ 5 var d = 1.5m; var i = (int)Math.Ceiling(d); Console.Write(i);
Ответ 3 Math.Ceiling не работает для меня, я использую этот код и эту работу:) int MyRoundedNumber= (int) MyDecimalNumber; if (Convert.ToInt32(MyDecimalNumber.ToString().Split('.')[1]) != 0) MyRoundedNumber++; и если вы хотите округлить отрицательное число до нуля, например, от -1,1 до -2, используйте этот int MyRoundedNumber= (int) MyDecimalNumber; if (Convert.ToInt32(MyDecimalNumber.ToString().Split('.')[1]) != 0) if(MyRoundedNumber>=0) MyRoundedNumber++; else MyRoundedNumber--;
Ответ 4 Прежде чем говорить, что это не работает, вы должны проверить, что ВСЕ ЗНАЧЕНИЯ в операции являются двойными. Вот пример в С#: int speed= Convert.ToInt32(Math.Ceiling((double)distance/ (double)time));