Oleksandr created MATH-1070:
-------------------------------
Summary: Incorrect rounding of float
Key: MATH-1070
URL: https://issues.apache.org/jira/browse/MATH-1070
Project: Commons Math
Issue Type: Bug
Affects Versions: 3.2
Environment: Windows 7, IntelliJ IDEA 10.5.4.
Reporter: Oleksandr
Priority: Critical
package org.apache.commons.math3.util
example of usage of round functions of Precision class:
Precision.round(0.0f, 2, BigDecimal.ROUND_UP) = 0.01
Precision.round((float)0.0, 2, BigDecimal.ROUND_UP) = 0.01
Precision.round((float) 0.0, 2) = 0.0
Precision.round(0.0, 2, BigDecimal.ROUND_UP) = 0.0
Seems the reason is usage of extending float to double inside round functions
and getting influence of memory trash as value.
I think, same problem will be found at usage of other round modes.
--
This message was sent by Atlassian JIRA
(v6.1#6144)