Probleme de code pour un black jack vb

beyleixa Messages postés 1 Date d'inscription lundi 15 mai 2006 Statut Membre Dernière intervention 15 mai 2006 - 15 mai 2006 à 19:27
Londonic Messages postés 298 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 26 septembre 2009 - 9 mars 2009 à 07:42
bonjour tt le monde... ça serait pour savoir si vous pouviez jeter un oeil a cet algo qui marche pas trop trop.... merci d'avance

Dim i, j, k, h, x, Nbpartie, score, scorebanquier, argent, mise, valeur(9), tab(9) As Integer
Dim carte(9), main, mainbanquier, message(6), tirer As String
Dim tirercarte, repioche As Boolean

'initialisation des variables
message(0) = "Vous avez perdu cette donne. "
message(1) = "il vous reste" & argent
message(2) = "Egalité, vous regagnez néanmoins ce que vous avez misé"
message(3) = "BLACK JACK !!! Vous gagnez 3 fois votre mise"
message(4) = "vous avez gagné cette donne, vous gagnez 2 fois votre mise"
message(5) = "Vous n'avez pas assez d'argent pour continuer. Désolé!"
message(6) = "Vous avez fini vos " & Nbpartie & ". Il vous reste " & argent & ". Au revoir et à bientôt" i j k = h = x = Nbpartie = score = scorebanquier = mise = 0
argent = 500 main mainbanquier "" tirer repioche True


'nombre de partie et controle de la mise qui ne doit pas dépasser l'argent du joueur.
Nbpartie = InputBox("Combien de parties voulez vous faire")


For x = 0 To Nbpartie - 1
mise = InputBox("Combien voulez-vous miser, sachant qu'il vous reste " & argent)


Do While mise > argent
mise = InputBox("Combien voulez-vous miser, sachant qu'il vous reste " & argent)
Loop


argent = argent - mise





' ici commence la génération des chiffres aléatoires qui seront stockés dans tab()
'et qui vont déterminer les cartes des joueurs stockées, elles, dans cartes()


Randomize()



'permet d éviter les doublons dans le tableau, et donc dans le jeu des joueurs


tab(0) = Int(Rnd() * 52) + 1



For i = 1 To 9
tab(i) = Int(Rnd() * 52) + 1
Do While tab(i) = tab(i - 1)
If tab(i) = 0 Then
tab(i) = Int(Rnd() * 52) + 1
End If
Loop
Next
For i = 0 To 9
'ici on stocke dans le tableau carte() les couleurs des cartes tirées
If tab(i) 13 And tab(i) 27 And tab(i) 21 And score > scorebanquier Then
MsgBox("Vous avez perdu cette donne.il vous reste " & argent)
ElseIf score < 21 And scorebanquier < 21 And score < scorebanquier Then
MsgBox("Vous avez perdu cette donne.il vous reste " & argent)
ElseIf score = scorebanquier Then
argent = argent + mise
MsgBox("Egalité, vous regagnez néanmoins ce que vous avez misé. il vous reste " & argent)
ElseIf score = 21 Then
argent = argent + 3 * mise
MsgBox("BLACK JACK !!! Vous gagnez 3 fois votre mise. il vous reste " & argent)
Else : MsgBox("vous avez gagné cette donne, vous gagnez 2 fois votre mise. il vous reste " & argent)
End If
'si le joueur n a plus d argent alors il perd et ne peut plus continuer les
'parties qu il avait prévues.
If argent

2 réponses

louloute26 Messages postés 4 Date d'inscription lundi 15 mai 2006 Statut Membre Dernière intervention 21 mai 2006
21 mai 2006 à 10:46
Salut !!
Ya des types super forts ici qui ont résolu mon pbm de Mastermind ^^
Donc pour moi ça marche, je l'ai rendu à la prof. J'ai un peu la flemme et pas du tout le temps de regarder ton programme, et puis c'est sûrement pas moi qui vais trouver ton erreur. Donc j'ai filé un lien vers ton BlackJack à mes "sauveurs de VB",  peut-être que ça va les motiver !
Bonne chance, et à bientôt à la fac !
Moi...
0
Londonic Messages postés 298 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 26 septembre 2009
9 mars 2009 à 07:42
 
Bonne base pour développer le jeu. On trouvera vite des WPF dour distribuer les cartes, car c'est là que le bât blesse: Le jeu est très mal distribué. On le voit mieux en ajoutant ce qui suit Dans le corps de Private Sub Beyleixa(), et la déclaration d'étiquette dans le Form1.
  
'ici on affiche le jeu de cartes
            Etiquette.Text = ""
            For i = 1 To 9
                Etiquette.Text = valeur(i) & carte(i) & vbLf
            Next
 
    Dim Etiquette As New Label
    Private Sub Form1_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown
        Etiquette.Dock = DockStyle.Fill
        Controls.Add(Etiquette)
        Beyleixa()
    End Sub
 
0
Rejoignez-nous