dvr 2

PHOTO EMBED

Sat Jan 04 2025 23:27:41 GMT+0000 (Coordinated Universal Time)

Saved by @Radhwen_hajri

class Jeu:
    def __init__(self, N):
        self.damier = [[0 for _ in range(N)] for _ in range(N)]  
        self.N = N  
        
        self.damier[N // 2 - 1][N // 2 - 1] = 1
        self.damier[N // 2 - 1][N // 2] = 2
        self.damier[N // 2][N // 2 - 1] = 2
        self.damier[N // 2][N // 2] = 1

    def afficher(self):
        """Affiche le damier avec des bordures."""
        N = self.N
        t = self.damier
        
        print("*" * (N + 4))  
        print("*" * (N + 4))
        
        for i in range(N):
            print("**", end="")  
            for j in range(N):
                if t[i][j] == 0:
                    print(".", end="")  
                elif t[i][j] == 1:
                    print("X", end="")  
                elif t[i][j] == 2:
                    print("O", end="")  
            print("**")  
        
        print("*" * (N + 4))  
        print("*" * (N + 4))

    def jouer(self):
        """Permet aux joueurs de jouer à tour de rôle."""
        while True:
            
            while True:
                try:
                    joueur = int(input("Qui joue ? (1 ou 2) : "))
                    if joueur in [1, 2]:
                        break
                    else:
                        print("Veuillez choisir 1 ou 2 uniquement.")
                except ValueError:
                    print("Entrée invalide. Entrez un nombre (1 ou 2).")

           
            while True:
                try:
                    ligne = int(input(f"Donnez le numéro de ligne (1 à {self.N}) : "))
                    colonne = int(input(f"Donnez le numéro de colonne (1 à {self.N}) : "))
                    
                    if 1 <= ligne <= self.N and 1 <= colonne <= self.N:
                        if self.damier[ligne - 1][colonne - 1] == 0:  
                            break
                        else:
                            print("La case est déjà occupée. Choisissez une autre.")
                    else:
                        print(f"Les coordonnées doivent être entre 1 et {self.N}.")
                except ValueError:
                    print("Entrée invalide. Entrez un nombre.")

            
            self.damier[ligne - 1][colonne - 1] = joueur

            
            self.afficher()

            
            quitter = input("Voulez-vous continuer ? (o/n) : ").lower()
            if quitter == "n":
                print("Fin de la partie. Merci d'avoir joué !")
                break



j = Jeu(6)
j.afficher()  
j.jouer()  
content_copyCOPY