我从下面的代码中得到了这个:
49
49.000000000000000000000000001
我想知道如何解决它,所以我回到49岁。
decimal a = 49;
decimal b = 24;
decimal result = a / b;
decimal c = result * b;
Console.WriteLine(a);
Console.WriteLine(c);
Windows 10计算器应用程序正确使用它,我猜它使用更精确。 必须有办法解决这个问题吗?
答案 0 :(得分:1)
我认为你实际上想要一个 lower 精度类型来进行数学计算。如果你使用双重类型,它可以正常工作:
double a = 49;
double b = 24;
double result = a / b;
double c = result * b;
Console.WriteLine(a);
Console.WriteLine(c);
答案 1 :(得分:-2)
不使用一个数字来存储商,而是使用两个数来存储商。
decimal a = 49;
decimal b = 24;
decimal resultNumerator = a;
decimal resultDenominator = b;
decimal c = (resultNumerator * b) / resultDenominator;
Console.WriteLine(a);
Console.WriteLine(c);