dvr 2
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()
Comments