这是一个现实世界的问题:如果我的产品A的单价为25.8848美元,我订购了77个单位,那么我应该如何计算小计和总数呢?
我实际上对四舍五入问题感到困惑。我写的代码是:
Math.Round(item.Price, 2) * item.Qty
这应该给我正确的小计和总结,其他项目将为我提供正确的总数。上述代码在舍入方面是否正确?或者应该这样做:
Math.Round(item.Price * item.Qty, 2)
我只是想知道如何在现实世界中完成小计价格舍入。
答案 0 :(得分:2)
应该对每个订单项应用舍入,因此您发布的第二种方法是正确的。每个订单项小计都应该四舍五入。这是一个例子,虽然它用红宝石编码,你可以得到想法等
http://makandracards.com/makandra/1505-invoices-how-to-properly-round-and-calculate-totals
答案 1 :(得分:1)
就C#而言,无论哪种方式都是正确的。这真的是关于贵公司的会计和业务规则的问题。理想情况下,这将在设计应用程序时在需求文档中定义。
话虽如此,我通常会认为第二个选项是正确的,在价格乘以数量后应用四舍五入。