Bonjour à tous,

Question : pourquoi lorsque je créé une boucle for qui incrémente un float j'ai des valeurs arrondies tout à fait absurdes ?

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
for (float z = 0f; z <= 1f; z+=0.02f)
  System.out.println(z);
Et voic ce qu j'obtiens :
0.0
0.02
0.04
0.06
0.08
0.099999994
0.11999999
0.13999999
0.15999998
0.17999998
0.19999997
0.21999997
0.23999996
0.25999996
0.27999997
0.29999998
0.32
0.34
0.36
0.38000003
0.40000004
0.42000005
0.44000006
0.46000007
0.48000008
0.50000006
0.52000004
0.54
0.56
0.58
0.59999996
0.61999995
0.6399999
0.6599999
0.6799999
0.69999987
0.71999985
0.73999983
0.7599998
0.7799998
0.7999998
0.81999975
0.83999974
0.8599997
0.8799997
0.8999997
0.91999966
0.93999964
0.9599996
0.9799996
0.9999996

Comment se fait-ce ?

Merci

[Nean]