Ответ 1
Простой, используйте Math.Ceiling
:
var wholeNumber = (int)Math.Ceiling(fractionalNumber);
Как бы вы округлили десятичное или float до целого числа. Например...
0.0 => 0
0.1 => 1
1.1 => 2
1.7 => 2
2.1 => 3
Etc.
Простой, используйте Math.Ceiling
:
var wholeNumber = (int)Math.Ceiling(fractionalNumber);
Что-то вроде этого?
int myInt = (int)Math.Ceiling(myDecimal);
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--;
Прежде чем говорить, что это не работает, вы должны проверить, что ВСЕ ЗНАЧЕНИЯ в операции являются двойными. Вот пример в С#:
int speed= Convert.ToInt32(Math.Ceiling((double)distance/ (double)time));
var d = 1.5m;
var i = (int)Math.Ceiling(d);
Console.Write(i);