¿Cómo puedo dividir dos enteros para obtener un doble?
¿Cómo divido dos enteros para obtener un doble?
5 answers
Quieres lanzar los números:
double num3 = (double)num1/(double)num2;
Nota: Si alguno de los argumentos en C# es un double
, se usa una división double
que resulta en un double
. Por lo tanto, lo siguiente también funcionaría:
double num3 = (double)num1/num2;
Para más información ver:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-19 19:51:11
Complementando la respuesta de @NoahD
Para tener una mayor precisión se puede lanzar a decimal:
(decimal)100/863
//0.1158748551564310544611819235
O:
Decimal.Divide(100, 863)
//0.1158748551564310544611819235
El doble se representa asignando 64 bits mientras que el decimal usa 128
(double)100/863
//0.11587485515643106
Explicación en profundidad de la"precisión"
Para obtener más detalles sobre la representación en coma flotante en binario y su precisión, eche un vistazo a este artículo de Jon Skeet donde habla de floats
y doubles
y este donde habla acerca de decimals
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-21 21:58:15
Lanza los enteros a dobles.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-03-19 04:12:47
Convertir uno de ellos a un doble primero. Esta forma funciona en muchos idiomas:
real_result = (int_numerator + 0.0) / int_denominator
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-03-19 04:12:02
var firstNumber=5000,
secondeNumber=37;
var decimalResult = decimal.Divide(firstNumber,secondeNumber);
Console.WriteLine(decimalResult );
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-10 10:01:33