Division by 100 Precision

I have this code below:

--->
long decimal = 57;
long decimal_divider_ = 100;

double dval = ((double) decimal / (double) decimal_divider_);
<---

I am expecting dval to be 0.57 but it gives me 0.569999...
I don't know why this happens, any ideas?
Floating point math is not exact.
Topic archived. No new replies allowed.