相关疑难解决方法(0)

如何避免Java中的浮点数或双精度浮点精度错误?

我有一个非常恼人的问题,在Java中有很多浮点数或双打数.基本上这个想法是,如果我执行:

for ( float value = 0.0f; value < 1.0f; value += 0.1f )
    System.out.println( value );
Run Code Online (Sandbox Code Playgroud)

我得到的是:

0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.70000005
0.8000001
0.9000001
Run Code Online (Sandbox Code Playgroud)

我明白浮动精度误差的积累,但是,如何摆脱这个?我尝试使用双打错误的一半,但结果仍然相同.

有任何想法吗?

java sum floating-accuracy

30
推荐指数
3
解决办法
5万
查看次数

浮点不准确的例子

你如何向仍然认为计算机是无限智能和准确的新鲜程序员和外行人解释浮点不准确?
你有一个最喜欢的例子或轶事似乎比一个精确但干燥的解释更好地理解这个想法吗?
这是如何在计算机科学课程中教授的?

floating-point floating-accuracy

29
推荐指数
3
解决办法
10万
查看次数

在java中求和Double类型的问题

我有一个宽松的线路:

 System.out.println(0.0000877979+0.3067846127);
Run Code Online (Sandbox Code Playgroud)

以上行的输出是: 0.30687241060000003

但预期的是: 0.3068724106

我怀疑,0000003最后是怎么来的.

java double core

1
推荐指数
1
解决办法
411
查看次数

标签 统计

floating-accuracy ×2

java ×2

core ×1

double ×1

floating-point ×1

sum ×1