Votre question

pendu visual basic 6.0 SP6

Tags :
  • string
  • Programmation
Dernière réponse : dans Programmation
11 Janvier 2008 11:31:26

Bonjour j'ai des problèmes avec mon programme , j'en ai repéré deux la première les mots ne s'incrémente pas à la place des tirets et le nombre de tiret s'augmente à chaque fois que je donne une réponse voici le code :
  1. 'Declaration des entiers : taille, i, cpt, lettreTrouvee
  2.  
  3. Dim taille As Integer
  4. Dim i As Integer
  5. Dim cpt As Integer
  6. Dim lettreTrouvee As Integer
  7.  
  8. 'Declaration des chaines : mot, reponse
  9.  
  10. Dim mot As String
  11. Dim reponse As String
  12.  
  13. 'Declaration du booleen : appartient
  14.  
  15. Dim appartient As Boolean
  16.  
  17. 'Declaration des tableaux de 30 caracteres : tabMotRech, tabMotSolution
  18.  
  19. Dim tabMotRech(30) As String
  20. Dim tabMotSolution(30) As String
  21.  
  22. Private Sub cmdNouvellePartie_Click()
  23.  
  24. 'rendre le bouton "Nouvelle Partie" invalide
  25.  
  26. cmdNouvellePartie.Enabled = False
  27.  
  28. 'cacher toutes les images du pendu
  29.  
  30. img1.Visible = False
  31. img2.Visible = False
  32. img3.Visible = False
  33. img4.Visible = False
  34. img5.Visible = False
  35. img6.Visible = False
  36. img7.Visible = False
  37. img8.Visible = False
  38. img9.Visible = False
  39. img10.Visible = False
  40.  
  41. 'saisir le mot a rechercher
  42.  
  43. mot = InputBox("Entrer le mot a chercher :")
  44.  
  45. 'calculer la longueur du mot
  46.  
  47. taille = Len(mot)
  48.  
  49. 'remplir les tableaux tabMotRech et tabMotSolution
  50.  
  51. For i = 1 To taille
  52. tabMotRech(i) = Mid(mot, i, 1)
  53. tabMotSolution(i) = "-"
  54. Next i
  55.  
  56. For i = 1 To taille
  57. lblAffMot.Caption = lblAffMot.Caption + tabMotSolution(i)
  58. Next i
  59.  
  60.  
  61. 'initialisation de cpt et lettreTrouvee a 0
  62.  
  63. cpt = 0
  64. lettreTrouvee = 0
  65.  
  66. 'cree une boucle DO
  67.  
  68. Do
  69.  
  70. 'on sort si gagne ou perdu
  71.  
  72. If lettreTrouvee = taille Or cpt > 10 Then Exit Do
  73.  
  74. 'saisir une lettre
  75.  
  76. reponse = InputBox("Saisir une lettre :")
  77.  
  78. 'Tester si la lettre appartient au mot
  79.  
  80. appartient = False
  81. For i = 1 To taille
  82. If tabMotRech(i) = reponse Then
  83. lettreTrouvee = lettreTrouvee + 1
  84. appartient = True
  85. End If
  86. Next i
  87.  
  88. If appartient Then
  89. MsgBox ("La lettre est bonne")
  90. Else
  91. MsgBox ("La lettre est fausse")
  92. cpt = cpt + 1
  93.  
  94. 'affiche une image en fonction de cpt
  95.  
  96. Select Case cpt
  97. Case 1
  98. img1.Visible = True
  99. Case 2
  100. img2.Visible = True
  101. Case 3
  102. img3.Visible = True
  103. Case 4
  104. img4.Visible = True
  105. Case 5
  106. img5.Visible = True
  107. Case 6
  108. img6.Visible = True
  109. Case 7
  110. img7.Visible = True
  111. Case 8
  112. img8.Visible = True
  113. Case 9
  114. img9.Visible = True
  115. Case 10
  116. img10.Visible = True
  117. Case 11
  118. img11.Visible = True
  119. End Select
  120. End If
  121.  
  122. 'affiche le tableau tabMotSolution
  123.  
  124. For i = 1 To taille
  125. lblAffMot.Caption = lblAffMot.Caption & tabMotSolution(i)
  126. Next i
  127.  
  128. 'reactualise de nombre de coups
  129.  
  130. lblAffEssai.Caption = Str(cpt)
  131.  
  132. 'fin de la boucle DO
  133.  
  134. Loop
  135.  
  136.  
  137. 'affiche le resultat du jeu
  138. If cpt < 11 Then
  139. MsgBox ("you are a winner")
  140. Else
  141. MsgBox ("you are a loser")
  142. End If
  143.  
  144.  
  145. 'rendre le bouton "Nouvelle Partie" valide
  146.  
  147. cmdNouvellePartie.Enabled = True
  148.  
  149. End Sub


Edit OmaR : ajout des balises code

Autres pages sur : pendu visual basic sp6

a c 232 L Programmation
14 Janvier 2008 22:37:40

Salut,

C'est normal, à la fin de chaque lettre, tu refais une boucle :
  1. For i = 1 To taille
  2. lblAffMot.Caption = lblAffMot.Caption & tabMotSolution(i)
  3. Next i


Il faut que tu affiches soit un tiret soit la solution.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS