operador operaciones obtener numeros multiplicar entero dividir decimales csharp con c# math

obtener - operaciones con decimales en c#



¿Cómo puedo dividir dos enteros para obtener un doble? (5)

¿Cómo divido dos enteros para obtener un doble?


Complementando la respuesta de @ NoahD

Para tener una mayor precisión puedes convertir 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 "precisión"

Para obtener más detalles sobre la representación de punto 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 de decimals .


Convertir uno de ellos a doble primero. Este formulario funciona en muchos idiomas:

real_result = (int_numerator + 0.0) / int_denominator


Emitir los enteros a dobles.


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 double división 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:

Dot Net Perls


var firstNumber=5000, secondeNumber=37; var decimalResult = decimal.Divide(firstNumber,secondeNumber); Console.WriteLine(decimalResult );