恭喜,你发布的帖子
发布于 2020-07-25 20:53:16
7楼
接着来。
想到这些,问题就成了如何让显示的数据有变化,而不是显得一成不变。
解决的方案自然是把小数部分单独提出来显示了。
不能直接把Kahan算法的结果值的小数部分单独显示,这样没什么用,可以简单实验证明。这里就不写了。
要把过程中的数据变成显得是变化的,也就是需要像放大镜一样看到累积值细节。
我的实验经历了两个版本,分别对应不同阶段出现的新问题。
1/瞬时值累积多次(1w次)后进行暂存,然后让累积值从头开始累积。
大小数是倍率问题,一般来说当大数超过小数的10^7倍后会导致加法出现问题。当然这个倍率其实不是定数,那么就取1万倍好了,这个总不会有问题吧。
2/同理,还可以拓展:暂存值如果暂存1w次后也进行同样的暂存。
3/这是第一个版本,如果瞬时值是个比较小的值,比如纯小数或带整数的小数,这个整数比较小,那么可以正常显示累积值变化。
如果瞬时值比较大,可能1w次累积就出现大小数了。所以有了第二个版本。
待续。。。
请填写推广理由:
分享
只看
楼主