永洪社区

标题: 格间计算结果有差 [打印本页]

作者: yhdata_lpBjiZEZ    时间: 2023-7-25 14:48
标题: 格间计算结果有差
字段1为隔间计算得出字段,因为小数位的关系导致计算器1*2的结果和3不符,请问各位老师这个问题要如何解决


作者: yhdata_yzm    时间: 2023-7-25 15:08
是要保留小数位还是不要小数位
作者: yhdata_lpBjiZEZ    时间: 2023-7-25 15:11
yhdata_yzm 发表于 2023-7-25 15:08
是要保留小数位还是不要小数位

要保留3位小数,但是按照保留3位小数用计算器计算完,结果和3对不上
作者: 宋宋    时间: 2023-7-25 15:16
yhdata_lpBjiZEZ 发表于 2023-7-25 15:11
要保留3位小数,但是按照保留3位小数用计算器计算完,结果和3对不上

按照你认为对的数据,3641这个数,你必须得保留5位小数,保留3位小数还是会有1块多的尾差,我觉得这个差可以忽略不计
作者: yhdata_yzm    时间: 2023-7-25 15:23
保留了小数但是计算的时候系统计算器还是会用2.04244这个数据去计算,算出来的数据是没有问题的呢
作者: yhdata_lpBjiZEZ    时间: 2023-7-25 15:25
宋宋 发表于 2023-7-25 15:16
按照你认为对的数据,3641这个数,你必须得保留5位小数,保留3位小数还是会有1块多的尾差,我觉得这个差 ...

保留5位太多了,能不能保留3位,然后计算的时候也要按照3位小数计算
作者: yhdata_lpBjiZEZ    时间: 2023-7-25 15:26
yhdata_yzm 发表于 2023-7-25 15:23
保留了小数但是计算的时候系统计算器还是会用2.04244这个数据去计算,算出来的数据是没有问题的呢 ...

但是如果在校验这个数的时候用计算器算就会对不上呀,正常也不肯跟显示这么多位
作者: yhdata_yzm    时间: 2023-7-25 15:34
yhdata_lpBjiZEZ 发表于 2023-7-25 15:26
但是如果在校验这个数的时候用计算器算就会对不上呀,正常也不肯跟显示这么多位 ...

java计算的时候是要给double类型的数据补全精度的这个是没有办法改变的https://blog.csdn.net/weixin_42116650/article/details/115020498,系统有高精度的配置,但是是全局的变量可能会影响其他不需要用高精度计算的报告,也会引起性能问题

作者: yhdata_lpBjiZEZ    时间: 2023-7-25 15:47
yhdata_yzm 发表于 2023-7-25 15:34
java计算的时候是要给double类型的数据补全精度的这个是没有办法改变的https://blog.csdn.net/weixin_4211 ...

那不能设置保留3位小数么

作者: yhdata_yzm    时间: 2023-7-25 16:43
yhdata_lpBjiZEZ 发表于 2023-7-25 15:47
那不能设置保留3位小数么

可以设置,但是计算的时候没办法,用你保留后的原始值去计算,这会自动再补全精度的。




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4