分摊,由于精确度位数造成,总量和和各分摊之和有差异,怎样才能保证没有误差.

zhoukeke43 2007-04-18 06:05:00
比如.总表读数,精确到小数两位,600.55.单价四位小数,5.1220.总金额是600.55*5.1220.但金额都是精确到一位小数的.
先是把用量分摊下去(当然分摊有各种各样的算法),再用分摊到用量乘以单价,为每一户的分摊金额.
怎样才使所有分摊金额,之和等于总金额.
...全文
471 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jerryfos 2007-04-19
  • 打赏
  • 举报
回复
在保证精度的前提下采用统一的四舍五入标准进行处理,纯属个人意见
zhenjiaobing 2007-04-19
  • 打赏
  • 举报
回复
看不明白 帮你顶!
ganju 2007-04-19
  • 打赏
  • 举报
回复
我是这么做的
ganju 2007-04-19
  • 打赏
  • 举报
回复
把差异部分更新到某一个最大或最小数量(或金额)上面
  • 打赏
  • 举报
回复
同样地,如果设计者只设计“单价、数量”字段就比较不技术了。
  • 打赏
  • 举报
回复
只要是“JohnVonNouma计算机”(那位老兄设计了存储和计算流程),分摊计算不可能永远没有截断误差。

这就是学术和技术的差别——把最后的几分钱指定给一个项目承担。
babyrockxray 2007-04-19
  • 打赏
  • 举报
回复
估计只能分摊了以后进行调整吧
取整用Math.Floor
egyqy 2007-04-19
  • 打赏
  • 举报
回复
看不明白 友情UP
zhaozhao110 2007-04-19
  • 打赏
  • 举报
回复
不太明白说的.
viena 2007-04-19
  • 打赏
  • 举报
回复
不懂,太深奥了~
zhoukeke43 2007-04-18
  • 打赏
  • 举报
回复
忘了说清楚一点.就是什么样的取整方法.如四舍五入.计算过程中注意什么问题.

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧