如何将两个整数除法得到二重数?


当前回答

我已经看过了大部分的答案,我很确定这是不可能实现的。不管你把两个int分成double或float都不会发生。 但是你有大量的方法来进行计算,在计算之前将它们转换为float或double就可以了。

其他回答

先将其中一个转换为double。这个表单在很多语言中都适用:

 real_result = (int_numerator + 0.0) / int_denominator
var result = decimal.ToDouble(decimal.Divide(5, 2));
var firstNumber=5000,
secondeNumber=37;

var decimalResult = decimal.Divide(firstNumber,secondeNumber);

Console.WriteLine(decimalResult );

最简单的方法是在整数上加小数点。

Ex.:

var v1 = 1 / 30 //the result is 0
var v2 = 1.00 / 30.00 //the result is 0.033333333333333333

你想要转换数字:

double num3 = (double)num1/(double)num2;

注意:如果c#中的任何参数是双精度,则使用双除法,其结果为双精度。所以,下面的也可以:

double num3 = (double)num1/num2;

有关更多信息,请参阅:

Dot Net Perls