Problème lors de l'exécution de ce programme
Bonjour,
Quelqu'un aurait-il une idée de pourquoi lorsque j'exécute le programme suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Sub tableuro3()
'Insertion d'un tableau de 100 lignes et 2 colonnes
ActiveDocument.Tables.Add Range:=Selection.Range, _
NumRows:=100, NumColumns:=2, _
DefaultTableBehavior:=wdWord9TableBehavior, _
AutoFitBehavior:=wdAutoFitFixed
'On imprime un tableau de conversion d'euros en francs
'Remplissage des en-têtes de colonnes
Selection.TypeText Text:="Euro"
Selection.MoveRight Unit:=wdCell
Selection.TypeText Text:="Franc"
Selection.MoveRight Unit:=wdCell
For euros = 0 To 10 Step 0.1
Selection.TypeText Text:=euros
Selection.MoveRight Unit:=wdCell
Selection.TypeText Text:=euros * 6.55957
Selection.MoveRight Unit:=wdCell
Next euros |
End Sub
J'obtiens ce tableau :
Euro |
Franc |
0 |
0 |
0,1 |
0,655957 |
0,2 |
1,311914 |
0,3 |
1,967871 |
0,4 |
2,623828 |
0,5 |
3,279785 |
0,6 |
3,935742 |
0,7 |
4,591699 |
0,8 |
5,247656 |
0,9 |
5,903613 |
1 |
6,55957 |
1,1 |
7,215527 |
1,2 |
7,871484 |
1,3 |
8,527441 |
1,4 |
9,183398 |
1,5 |
9,839355 |
1,6 |
10,495312 |
1,7 |
11,151269 |
1,8 |
11,807226 |
1,9 |
12,463183 |
2 |
13,11914 |
2,1 |
13,775097 |
2,2 |
14,431054 |
2,3 |
15,087011 |
2,4 |
15,742968 |
2,5 |
16,398925 |
2,6 |
17,054882 |
2,7 |
17,710839 |
2,8 |
18,366796 |
2,9 |
19,022753 |
3 |
19,67871 |
3,1 |
20,334667 |
3,2 |
20,990624 |
3,3 |
21,646581 |
3,4 |
22,302538 |
3,5 |
22,958495 |
3,6 |
23,614452 |
3,7 |
24,270409 |
3,8 |
24,926366 |
3,9 |
25,582323 |
4 |
26,23828 |
4,1 |
26,894237 |
4,2 |
27,550194 |
4,3 |
28,206151 |
4,4 |
28,862108 |
4,5 |
29,518065 |
4,6 |
30,174022 |
4,7 |
30,829979 |
4,8 |
31,485936 |
4,9 |
32,141893 |
5 |
32,79785 |
5,1 |
33,453807 |
5,2 |
34,109764 |
5,3 |
34,765721 |
5,4 |
35,421678 |
5,5 |
36,077635 |
5,6 |
36,733592 |
5,7 |
37,389549 |
5,8 |
38,045506 |
5,9 |
38,701463 |
5,99999999999999 |
39,35742 |
6,09999999999999 |
40,013377 |
6,19999999999999 |
40,669334 |
6,29999999999999 |
41,325291 |
6,39999999999999 |
41,981248 |
6,49999999999999 |
42,637205 |
6,59999999999999 |
43,293162 |
6,69999999999999 |
43,9491189999999 |
6,79999999999999 |
44,6050759999999 |
6,89999999999999 |
45,2610329999999 |
6,99999999999999 |
45,9169899999999 |
7,09999999999999 |
46,5729469999999 |
7,19999999999999 |
47,2289039999999 |
7,29999999999999 |
47,8848609999999 |
7,39999999999999 |
48,5408179999999 |
7,49999999999999 |
49,1967749999999 |
7,59999999999999 |
49,8527319999999 |
7,69999999999999 |
50,5086889999999 |
7,79999999999999 |
51,1646459999999 |
7,89999999999999 |
51,8206029999999 |
7,99999999999999 |
52,4765599999999 |
8,09999999999999 |
53,1325169999999 |
8,19999999999999 |
53,7884739999999 |
8,29999999999999 |
54,4444309999999 |
8,39999999999999 |
55,1003879999999 |
8,49999999999999 |
55,7563449999999 |
8,59999999999999 |
56,4123019999999 |
8,69999999999999 |
57,0682589999999 |
8,79999999999998 |
57,7242159999999 |
8,89999999999998 |
58,3801729999999 |
8,99999999999998 |
59,0361299999999 |
9,09999999999998 |
59,6920869999999 |
9,19999999999998 |
60,3480439999999 |
9,29999999999998 |
61,0040009999999 |
9,39999999999998 |
61,6599579999999 |
9,49999999999998 |
62,3159149999999 |
9,59999999999998 |
62,9718719999999 |
9,69999999999998 |
63,6278289999999 |
9,79999999999998 |
64,2837859999999 |
9,89999999999998 |
64,9397429999999 |
9,99999999999998 |
65,5956999999999 |
Tout est bien exécuté par palier de 0,1 jusqu'à 5,9. Et ensuite au lieu de passer à 6, il passe à 5,999999999998, puis 6,099999999998, puis 6,19999999999998.... et non 6; 6,1; 6,2........
Une explication? Une idée?
Merci pour votre aide.