C #: как мне округлить десятичную дробь и присвоить ее int16? - PullRequest
1 голос
/ 15 июня 2011

У меня есть эти переменные:

Int16 value;
decimal x, y;

Я пытался сделать это

value = (x * 6) / y;

но получена ошибка компилятора. В идеале я хотел бы, чтобы результат вычисления был округлен до присвоения ему значения Как я могу это сделать? Спасибо.

Ответы [ 5 ]

2 голосов
/ 15 июня 2011

Что-то вроде

value = (Int16)Math.Round((x*6)/y);

должно сработать.

2 голосов
/ 15 июня 2011
int value = Convert.ToInt16((x * 6) / y)
1 голос
/ 15 июня 2011

Я думаю, что вы должны выполнить приведение типа, прежде чем присваивать ему значение int16.

1 голос
/ 15 июня 2011

int value = Convert.ToInt16 (Math.Round ((x * 6) / y);

1 голос
/ 15 июня 2011

значение = Convert.ToInt16 (Math.Round ((x * 6) / y));

...