У флеша есть погрешность при сложении дробных чисел не кратных (0.5, 0.25, 0.125, 0.0625 и тд).
Поэтому со временем накапливается ошибка при сложении.
И реально, при многократном вызове n+=0.2, вместо 4 оказывается число 4.000000000000000888178419700125
Вторая проблема заключается в том, что при таком малом значении дробной части, в трейс выводится только целая часть, что может вызывать кучу проблем и вопросов, вроде сраниваем

Код:
trace (n +" == 4 -->" + (n== 4))
//// 4 == 4 --> false
а получается, что 4 не равно 4.
Увидеть данную проблему можно так:

Код:
trace (n - 4)
//// 8.88178419700125e-16