When using a floating-point while
loop counter, an accumulation of rounding errors may result in a mismatch between the expected and
actual number of iterations.
Even if floating-point loop counters appears to behave correctly on one implementation, it may give a different number of iterations on another
implementation.