Comment by umanwizard
6 years ago
You can get a larger error than that using one operation.
fn main() {
let x: f64 = 9007199254740992.0;
assert_eq!(x + 1.0, x);
}
6 years ago
You can get a larger error than that using one operation.
fn main() {
let x: f64 = 9007199254740992.0;
assert_eq!(x + 1.0, x);
}
You are absolutely right.
When adding numbers with large magnitudes differences (around 10^17 I think) it might exceed the format precision. I should have taken that in account when defining the error boundaries.
In dollars, you start having issues with cents when working with a tens of trillions.
For the vast majority of people this won't be an issue.