Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[VB.NET]Morpion
Auteur Message
Répondre en citant
Message [VB.NET]Morpion 
Bonjour, encore un petit morpion en VB.net cette fois.

OS de développement : Windows 7

OS compatibles : Tous du moment que le framework 4.0 ou plus est installé

Téléchargement du framework 4.0 : http://www.01net.com/telecharger/windows/Programmation/creation/fiches/100086.html.

Code:
Module Module1

    Sub Main()
        Console.Title = "Morpion"
        Console.WindowHeight = 17
        Console.WindowWidth = 29
        Console.CursorVisible = False
        Dim rejouer As Boolean = True
        While rejouer
            Console.Clear()
            Dim a As String = " "
            Dim b As String = " "
            Dim c As String = " "
            Dim d As String = " "
            Dim e As String = " "
            Dim f As String = " "
            Dim g As String = " "
            Dim h As String = " "
            Dim i As String = " "
            Dim joueur As Integer = 0
            Dim terminer As Boolean = False
            Dim touche As ConsoleKeyInfo
            Dim couleur(9) As System.ConsoleColor
            Dim IAaleatoire As Integer = 0
            Dim aleatoire As Boolean
            Dim continuer As Boolean = True
            Dim choix As Boolean = False
            Dim premier As Integer
            Randomize()
            premier = Rnd()
            For x As Integer = 0 To 8
                couleur(x) = ConsoleColor.Black
            Next
            While continuer
                aleatoire = True
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.WriteLine("")
                Console.WriteLine("         7  ║8  ║9  ")
                Console.Write("          ")
                Console.ForegroundColor = couleur(7)
                Console.Write(g)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(8)
                Console.Write(h)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(9)
                Console.Write(i)
                Console.WriteLine("")
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.WriteLine("            ║   ║   ")
                Console.WriteLine("         ═══╬═══╬═══")
                Console.WriteLine("         4  ║5  ║6  ")
                Console.Write("          ")
                Console.ForegroundColor = couleur(4)
                Console.Write(d)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(5)
                Console.Write(e)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(6)
                Console.Write(f)
                Console.WriteLine()
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.WriteLine("            ║   ║   ")
                Console.WriteLine("         ═══╬═══╬═══")
                Console.WriteLine("         1  ║2  ║3  ")
                Console.Write("          ")
                Console.ForegroundColor = couleur(1)
                Console.Write(a)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(2)
                Console.Write(b)
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.Write(" ║ ")
                Console.ForegroundColor = couleur(3)
                Console.Write(c)
                Console.WriteLine()
                Console.ForegroundColor = ConsoleColor.Cyan
                Console.WriteLine("            ║   ║   ")
                Console.WriteLine("")
                If terminer Then
                    If joueur = 1 Then
                        Console.ForegroundColor = ConsoleColor.Magenta
                        Console.WriteLine("Bravo ! Vous avez gagné =)")
                        Console.WriteLine()
                    ElseIf joueur = 2 Then
                        Console.ForegroundColor = ConsoleColor.Magenta
                        Console.WriteLine("Dommage ! Vous avez perdu =(")
                        Console.WriteLine()
                    ElseIf joueur = 3 Then
                        Console.ForegroundColor = ConsoleColor.Magenta
                        Console.WriteLine("Égalité !")
                        Console.WriteLine()
                    End If
                    Console.WriteLine("Rejouer (y/n) ?")
                    touche = Console.ReadKey()
                    If touche.Key = ConsoleKey.Y Then
                        premier = 1
                        terminer = True
                    Else
                        rejouer = False
                        premier = 1
                        terminer = True
                    End If
                    choix = False
                    continuer = False
                End If
                If premier = 1 And terminer = False Then '############################################# # Partie Joueur # ###################################################
                    choix = True
                    While choix
                        touche = Console.ReadKey()
                        If (touche.Key = ConsoleKey.NumPad1 And a = " ") Then
                            a = "X"
                            couleur(1) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad2 And b = " ") Then
                            b = "X"
                            couleur(2) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad3 And c = " ") Then
                            c = "X"
                            couleur(3) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad4 And d = " ") Then
                            d = "X"
                            couleur(4) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad5 And e = " ") Then
                            e = "X"
                            couleur(5) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad6 And f = " ") Then
                            f = "X"
                            couleur(6) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad7 And g = " ") Then
                            g = "X"
                            couleur(7) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad8 And h = " ") Then
                            h = "X"
                            couleur(8) = ConsoleColor.Green
                            choix = False
                        ElseIf (touche.Key = ConsoleKey.NumPad9 And i = " ") Then
                            i = "X"
                            couleur(9) = ConsoleColor.Green
                            choix = False
                        Else
                            Console.ForegroundColor = ConsoleColor.DarkYellow
                            Console.WriteLine("Entrez une touche valide et ne cochez pas deux fois la même case.")
                        End If
                    End While
                End If
                premier = 0
                If (a = "X" And b = "X" And c = "X") Or (a = "X" And d = "X" And g = "X") Or (a = "X" And e = "X" And i = "X") Or (b = "X" And e = "X" And h = "X") Or (c = "X" And f = "X" And i = "X") Or (c = "X" And e = "X" And g = "X") Or (d = "X" And e = "X" And f = "X") Or (g = "X" And h = "X" And i = "X") Then
                    joueur = 1
                    terminer = True
                    premier = 1
                ElseIf a <> " " And b <> " " And c <> " " And a <> " " And d <> " " And g <> " " And a <> " " And e <> " " And i <> " " And b <> " " And e <> " " And h <> " " And c <> " " And f <> " " And i <> " " And c <> " " And e <> " " And g <> " " And d <> " " And e <> " " And f <> " " And g <> " " And h <> " " And i <> " " Then
                    premier = 1
                    terminer = True
                End If
                If premier = 0 Then '############################################################## # Partie IA # #######################################################
                    ' Pour gagner
                    If ((a = "O" And b = "O" And c = " ") Or (f = "O" And i = "O" And c = " ") Or (e = "O" And g = "O" And c = " ")) Then
                        c = "O"
                        couleur(3) = ConsoleColor.Red
                    ElseIf ((b = "O" And c = "O" And a = " ") Or (d = "O" And g = "O" And a = " ") Or (e = "O" And i = "O" And a = " ")) Then
                        a = "O"
                        couleur(1) = ConsoleColor.Red
                    ElseIf ((a = "O" And c = "O" And b = " ") Or (e = "O" And h = "O" And b = " ")) Then
                        b = "O"
                        couleur(2) = ConsoleColor.Red
                    ElseIf ((d = "O" And e = "O" And f = " ") Or (i = "O" And c = "O" And f = " ")) Then
                        f = "O"
                        couleur(6) = ConsoleColor.Red
                    ElseIf ((e = "O" And f = "O" And d = " ") Or (a = "O" And g = "O" And d = " ")) Then
                        d = "O"
                        couleur(4) = ConsoleColor.Red
                    ElseIf ((d = "O" And f = "O" And e = " ") Or (b = "O" And h = "O" And e = " ") Or (a = "O" And i = "O" And e = " ") Or (c = "O" And g = "O" And e = " ")) Then
                        e = "O"
                        couleur(5) = ConsoleColor.Red
                    ElseIf ((g = "O" And h = "O" And i = " ") Or (c = "O" And f = "O" And i = " ") Or (e = "O" And a = "O" And i = " ")) Then
                        i = "O"
                        couleur(9) = ConsoleColor.Red
                    ElseIf ((h = "O" And i = "O" And g = " ") Or (a = "O" And d = "O" And g = " ") Or (e = "O" And c = "O" And g = " ")) Then
                        g = "O"
                        couleur(7) = ConsoleColor.Red
                    ElseIf ((g = "O" And i = "O" And h = " ") Or (b = "O" And e = "O" And h = " ")) Then
                        h = "O"
                        couleur(8) = ConsoleColor.Red
                        'Pour bloquer
                    ElseIf ((a = "X" And b = "X" And c = " ") Or (f = "X" And i = "X" And c = " ") Or (e = "X" And g = "X" And c = " ")) Then
                        c = "O"
                        couleur(3) = ConsoleColor.Red
                    ElseIf ((b = "X" And c = "X" And a = " ") Or (d = "X" And g = "X" And a = " ") Or (e = "X" And i = "X" And a = " ")) Then
                        a = "O"
                        couleur(1) = ConsoleColor.Red
                    ElseIf ((a = "X" And c = "X" And b = " ") Or (e = "X" And h = "X" And b = " ")) Then
                        b = "O"
                        couleur(2) = ConsoleColor.Red
                    ElseIf ((d = "X" And e = "X" And f = " ") Or (i = "X" And c = "X" And f = " ")) Then
                        f = "O"
                        couleur(6) = ConsoleColor.Red
                    ElseIf ((e = "X" And f = "X" And d = " ") Or (a = "X" And g = "X" And d = " ")) Then
                        d = "O"
                        couleur(4) = ConsoleColor.Red
                    ElseIf ((d = "X" And f = "X" And e = " ") Or (b = "X" And h = "X" And e = " ") Or (a = "X" And i = "X" And e = " ") Or (c = "X" And g = "X" And e = " ")) Then
                        e = "O"
                        couleur(5) = ConsoleColor.Red
                    ElseIf ((g = "X" And h = "X" And i = " ") Or (c = "X" And f = "X" And i = " ") Or (e = "X" And a = "X" And i = " ")) Then
                        i = "O"
                        couleur(9) = ConsoleColor.Red
                    ElseIf ((h = "X" And i = "X" And g = " ") Or (a = "X" And d = "X" And g = " ") Or (e = "X" And c = "X" And g = " ")) Then
                        g = "O"
                        couleur(7) = ConsoleColor.Red
                    ElseIf ((g = "X" And i = "X" And h = " ") Or (b = "X" And e = "X" And h = " ")) Then
                        h = "O"
                        couleur(8) = ConsoleColor.Red
                    Else
                        While aleatoire
                            'Aléatoirement
                            Randomize()
                            IAaleatoire = 1 + 9 * Rnd()
                            If IAaleatoire = 1 And a = " " Then
                                a = "O"
                                couleur(1) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 2 And b = " " Then
                                b = "O"
                                couleur(2) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 3 And c = " " Then
                                c = "O"
                                couleur(3) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 4 And d = " " Then
                                d = "O"
                                couleur(4) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 5 And e = " " Then
                                e = "O"
                                couleur(5) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 6 And f = " " Then
                                f = "O"
                                couleur(6) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 7 And g = " " Then
                                g = "O"
                                couleur(7) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 8 And h = " " Then
                                h = "O"
                                couleur(8) = ConsoleColor.Red
                                aleatoire = False
                            ElseIf IAaleatoire = 9 And i = " " Then
                                i = "O"
                                couleur(9) = ConsoleColor.Red
                                aleatoire = False
                            End If
                        End While
                    End If
                    premier = 1
                    choix = True
                End If
                Console.Clear()
                If (a = "O" And b = "O" And c = "O") Or (a = "O" And d = "O" And g = "O") Or (a = "O" And e = "O" And i = "O") Or (b = "O" And e = "O" And h = "O") Or (c = "O" And f = "O" And i = "O") Or (c = "O" And e = "O" And g = "O") Or (d = "O" And e = "O" And f = "O") Or (g = "O" And h = "O" And i = "O") Then
                    joueur = 2
                    terminer = True
                ElseIf a <> " " And b <> " " And c <> " " And a <> " " And d <> " " And g <> " " And a <> " " And e <> " " And i <> " " And b <> " " And e <> " " And h <> " " And c <> " " And f <> " " And i <> " " And c <> " " And e <> " " And g <> " " And d <> " " And e <> " " And f <> " " And g <> " " And h <> " " And i <> " " Then
                    joueur = 3
                    terminer = True
                End If
            End While
        End While
    End Sub

End Module



Ou téléchargement de l'exe : http://www.box.net/shared/65vtba620j



Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [VB.NET]Morpion 
Bonjour
woua le code , je ne connais pas ce langage mais ça fait plaisir de voir que tu partages ta source.
Je vais aller installer le framework 4 pour tester.

Merci Okay




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message [VB.NET]Morpion 
Merci Laddy Smile

Si quelqu'un d'autre connait ce langage, j'attends les critiques pour améliorer le code, la présentation ...



Répondre en citant
Message [VB.NET]Morpion 
C'est sympa, mais faudrait faire des méthodes/fonctions différentes pour que se soit plus propre et pour ne pas que ça se répéte. Okay



Message [VB.NET]Morpion 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch