I am incrementing a double value by a small decimal less than 1. Can anyone explain how the app can return something like 0.8000000000001. for the first few cycles, it works OK but then it starts giving weird numbers, and then a few cycles later it settles down again. WHATS GOIN ON?

Is it something to do with double data types? how do I get around this?