The first claim is about finite base-10 notation; the later live result applies to JavaScript Number and equivalent IEEE 754 binary64 arithmetic.
Reference path · conclusion first
Why Does 0.1 + 0.2 Not Equal Exactly 0.3?
0.1 + 0.2 is not exactly 0.3 in JavaScript Number.
Precise claimNo finite base-10 decimal equals exactly 1/3. In JavaScript Number, binary64 also approximates decimal literals, so 0.1 + 0.2 evaluates to 0.30000000000000004 rather than exactly 0.3.
This does not mean floating point is unusable. A fixed epsilon is not a universal remedy; financial systems may require integer minor units or decimal arithmetic, while exact integer counts can use strict equality.
If a computed value is approximate, then choose a comparison contract that matches its domain — a bounded tolerance, decimal arithmetic, or an exact integer representation.
Evidence reviewed 2026-07-20. Corrections and review policy.
Use as a reference
Declare the discussion context, then copy a stable link. No account or personal data is attached.
Why Does 0.1 + 0.2 Not Equal Exactly 0.3?
Before we blame a programming language, make a smaller prediction: can any finite decimal ever equal exactly 1/3? Commit to a model first; the page will let you test it afterward.
Your system has reduced motion on, so the unlock fades are off. Nothing on this page depends on motion: every number is still computed live by your browser the moment you commit.
First claim under judgment
Take it into the discussion
Need the conclusion, boundary and sources without the challenge?
Open the same page in its conclusion-first reading state, then declare the work context before copying a stable reference.
Use as a reference →