Tom's Guide > Forum > Programmation > pendu visual basic 6.0 SP6

pendu visual basic 6.0 SP6

Forum Programmation : pendu visual basic 6.0 SP6

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

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 :

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

Edit OmaR : ajout des balises code


Message édité par OmaR le 14-01-2008 à 22:32:11
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Salut,

C'est normal, à la fin de chaque lettre, tu refais une boucle :

Code :
  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.

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR
Tom's Guide > Forum > Programmation > pendu visual basic 6.0 SP6
Aller à :

Il y a 254 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens