C# 中的除法输出与 Excel 不同

  • 本文关键字:Excel 不同 输出 除法 c#
  • 更新时间 :
  • 英文 :


我有这个公式来获得FinalQuantity = Quantity / Price . Quantity声明为 doublePrice float

如果我在代码中手动输入值。 FinalQuantity = 9000000 / 102.6411它将具有 87684.173299000118 的输出。

但是如果我将值分配给变量 QuantityPrice.它将输出87684.174988370942 .我尝试将Quantity转换为Integer并将Price转换为double但仍然得到相同的结果。

有人可以帮我如何解决它。

问题是浮点值是由一个值和一个指数计算的。这允许您在少量内存中存储大量表示形式。这也意味着你并不总是得到你想要的数字,只是非常非常接近。这就是为什么当您比较浮点值时,您会在一定的容差范围内比较它们。

换句话说...正如其他人所说...始终使用Decimal

最新更新