Closed Bug 261947 Opened 20 years ago Closed 20 years ago

Floating point arithmetics can produce wrong results

Categories

(Core :: JavaScript Engine, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 20140

People

(Reporter: escaillas, Unassigned)

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) A simple operation like : 2.00000000000001 - 1 produces 1.0000000000000102 If the 15th digit of a float is not relevant, the comparison operator should not take it into account as in : 1 == (1 / 54 + 1) * 54 - 54 wich resolves to : 1 == 1.000000000000007 Reproducible: Always Steps to Reproduce: 1. document.write( 1 == (1 / 54 + 1) * 54 - 54 ) 2. 3. Actual Results: false Expected Results: true CPU is AMD Athlon 1.2 Ghz
printf("%99.99f\n", (1.0/54.0 + 1.0) * 54.0 - 54.0); 1.000000000000007105427357601001858711242675781250000000000000000000000000000000000000000000000000000 Your issue is with IEEE754 rules, not Mozilla.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
Whiteboard: DUPEME
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
*** This bug has been marked as a duplicate of 20140 ***
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago20 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.