Comment coder un jeu de morpion (tic-tac-toe) fonctionnel en Python...
Morpion en Python — code simple pour NSI





Grille et conditions de victoire
Modélisation du plateau
Le morpion utilise une matrice de nombres entiers.
- Ronds (Joueur) : représentés par la valeur .
- Croix (Ordi) : représentées par la valeur .
- Cases vides : représentées par la valeur .
Détecter la fin de partie
La fonction fin(mat) vérifie l'état de la grille.
- Somme de 3 : un joueur aligne trois ronds (), victoire du joueur.
- Somme de 12 : l'ordinateur aligne trois croix (), victoire de l'ordinateur.
💡 Astuce : Utiliser des valeurs numériques différentes de évite toute confusion lors du calcul de la somme des lignes ou colonnes.

Entrées joueur et logique de l'IA
Tour du joueur
Le joueur saisit les coordonnées de la case ciblée.
- Coordonnées : conversion des indices utilisateurs vers les indices Python .
- Validation : vérification que la case
mat[a-1][b-1]est bien égale à (libre).
Stratégie de l'ordinateur
L'ordinateur joue de manière semi-intelligente ou aléatoire.
- Recherche de proximité : l'ordinateur tente de poser son pion adjacent à l'un de ses pions existants.
- Aléatoire : si aucune case adjacente n'est libre, il choisit une case au hasard via
random.randint.
💡 Attention : Pense à soustraire aux saisies de l'utilisateur pour ne pas dépasser la taille de la liste et lever une erreur
IndexError.

Boucle de jeu principale
Initialisation
La partie commence par la création d'une grille vide.
- Matrice vide : déclarée sous la forme
[[0,0,0], [0,0,0], [0,0,0]]. - Premiers tours : le joueur commence la partie pour installer le jeu.
Boucle de jeu
Le jeu alterne les tours jusqu'à la fin de la partie.
- Alternance : boucle
whilequi tourne tant quefin(mat)renvoieFalse. - Verdict : affichage final du vainqueur une fois la boucle interrompue.
💡 Attention : Veille à tester la fin de partie immédiatement après le coup du joueur pour éviter que l'ordinateur ne joue sur une grille déjà pleine.

Lancement du programme
L'interface utilisateur
Le programme propose un menu simple pour démarrer ou quitter.
- Choix initial : saisie de pour lancer
organiser_partie()ou pour quitter. - Fermeture : message d'au revoir amical si l'utilisateur décide de ne pas jouer.
Exemple :
- Entrée :
1-> Déclenche le jeu. - Entrée :
0-> Affiche "Au revoir".
💡 Astuce : Convertis toujours l'entrée utilisateur avec
int()pour pouvoir la comparer directement à des nombres entiers.
Si on te demande...
Contenus similaires
Contenus les plus populaires en NSI
9Programmation Orientée Objet, NSI terminale
NSI TERMINALE
Structures de Données: Liste, Pile, File
Explorez les concepts fondamentaux des structures de données en NSI, y compris les listes, les piles et les files. Apprenez les principes FIFO et LIFO, ainsi que leur implémentation en Python. Ce document présente des schémas explicatifs et des exemples pratiques pour une meilleure compréhension.
Réseaux Sociaux et Graphes
Explorez les concepts clés des réseaux sociaux et leur représentation graphique. Ce document couvre l'utilisation de Python pour générer des valeurs aléatoires, les structures de graphes, et les conditions avec des instructions if. Idéal pour comprendre les dynamiques de groupe et les technologies des réseaux sociaux.
Composants de l'Ordinateur
Explorez les éléments essentiels de l'architecture informatique, y compris les cartes d'extension, le disque dur, la mémoire RAM et ROM, ainsi que les périphériques d'entrée et de sortie. Ce résumé détaillé est conçu pour aider les étudiants en NSI à comprendre le fonctionnement des ordinateurs et leurs composants clés.
Histoire de la Photographie
Explorez l'évolution de la photographie, des premières expériences aux techniques modernes. Ce document aborde les pionniers comme Niépce et Daguerre, les procédés photographiques tels que le daguerréotype et l'ambrotype, ainsi que l'impact culturel et social de la photographie à travers les siècles. Type: résumé historique.
Commandes SQL Essentielles
Explorez les commandes fondamentales du langage SQL, y compris INSERT, DELETE, UPDATE, et SELECT. Ce résumé couvre également les contraintes de domaine, de relation et de référence, ainsi que les opérations de tri et de jointure. Idéal pour les étudiants préparant le bac en NSI.
Capteurs et Actionneurs Automatisés
Explorez les capteurs et actionneurs dans les systèmes automatisés. Ce résumé couvre les types de capteurs (contact et sans contact), leurs fonctions (logiques et analogiques), ainsi que les différents types d'actionneurs et leurs applications. Idéal pour les étudiants en ingénierie électrique et en robotique.
Principes des Systèmes d'Exploitation
Explorez les fonctions essentielles des systèmes d'exploitation, y compris la gestion des processus, de la mémoire, et des fichiers. Découvrez les différences entre systèmes libres et propriétaires, ainsi que les principaux systèmes d'exploitation comme Windows, Mac OS, et Linux. Type: Fiche de révisions.
Fonctions en Programmation
Explorez les concepts fondamentaux des fonctions en programmation, y compris la définition, la syntaxe, les paramètres et l'instruction de retour. Ce résumé est idéal pour les étudiants en NSI souhaitant maîtriser les bases des fonctions. Type: résumé.
Contenus les plus populaires
9Règles de Conduite Essentielles
Découvrez les règles fondamentales du code de la route, y compris la signalisation, les limites de vitesse, les distances de sécurité et d'arrêt, ainsi que les normes d'alcoolémie. Ce résumé pratique est conçu pour aider les étudiants à maîtriser les connaissances nécessaires pour réussir leur examen de conduite.
Guide Complet Brevet Français
Préparez-vous efficacement pour le brevet de Français avec ce guide détaillé. Explorez les épreuves, les figures de style, les points de vue narratifs, les fonctions grammaticales, et bien plus encore. Idéal pour les révisions et la compréhension des concepts clés en grammaire et littérature française.
Figures de Style Essentielles
Explorez les figures de style clés en français, incluant la comparaison, la métaphore, la personnification, et plus. Ce document comprend des exemples pratiques et un exercice avec corrigé pour renforcer votre compréhension. Idéal pour les révisions du brevet.
Guerre Totale : 1939-1945
Explorez les événements marquants de la Seconde Guerre mondiale, de l'invasion de la Pologne à la capitulation du Japon. Ce résumé aborde les concepts clés tels que la guerre totale, le génocide des Juifs, la bataille de Stalingrad, et l'impact de la propagande. Idéal pour les étudiants en histoire cherchant à comprendre les enjeux et les conséquences de ce conflit majeur.
Conflits de la Guerre Froide
Explorez les principaux événements et tensions de la Guerre froide (1947-1991), y compris la division de l'Allemagne, la crise de Cuba, la guerre du Vietnam, et la course à l'espace. Cette fiche de révision couvre les idéologies opposées des blocs Est et Ouest, les crises majeures, et l'impact mondial de cette période historique.
Figures de Style Essentielles
Découvrez les figures de style clés, telles que la comparaison, la métaphore, et la personnification, à travers des exemples tirés de la littérature. Ce document de révision est idéal pour préparer le brevet et approfondir votre compréhension des procédés littéraires. Parfait pour les étudiants en français.
Formules Clés en Mécanique
Découvrez les formules essentielles en physique-chimie, incluant la masse volumique, l'énergie cinétique, l'énergie potentielle, et la puissance. Ce résumé pratique est idéal pour les révisions du brevet. Apprenez à calculer P, E, et Ec avec des exemples clairs et des unités appropriées.
Règles de Circulation Essentielles
Découvrez les règles de circulation essentielles pour la sécurité routière. Ce résumé couvre les priorités, les limitations de vitesse, les conditions de dépassement, et les signaux lumineux. Idéal pour les candidats au certificat de sécurité routière (ASSR) et tous ceux qui souhaitent renforcer leurs connaissances en matière de sécurité routière.
Figures de Style Essentielles
Explorez les figures de style clés en français, y compris la comparaison, la métaphore, la personnification, et l'antithèse. Ce document présente des définitions claires et des exemples pour chaque figure, facilitant la compréhension et l'application dans vos écrits. Type: Fiche lexique.
Les étudiants nous adorent, il ne manque plus que toi.
L'application est très facile d'utilisation et bien conçue. Jusqu'à présent, j'ai trouvé tout ce que je cherchais et j'ai pu apprendre beaucoup de choses grâce aux présentations ! Je vais certainement utiliser l'application pour un travail en classe ! Et comme source d'inspiration personnelle, elle est bien sûr aussi très utile.
Cette application est vraiment super. Il y a tellement de fiches de révision et d'aide, [...]. Par exemple, la matière qui me pose problème est le français et l'appli a un choix d'aide très large. Grâce à cette application, je me suis améliorée en français. Je la recommanderais à tout le monde.
Waouh, je suis vraiment abasourdi. J'ai essayé l'application parce que je l'avais déjà vue plusieurs fois dans la publicité et j'ai été absolument choquée. Cette appli est L'AIDE dont on rêve pour l'école et surtout, elle propose tellement de choses, comme des rédactions et des fiches qui m'ont personnellement TRÈS bien aidé.
Morpion en Python — code simple pour NSI
Comment coder un jeu de morpion (tic-tac-toe) fonctionnel en Python ? Ce projet classique de programmation illustre parfaitement la manipulation des listes bidimensionnelles, la gestion des structures de contrôle et la création d'algorithmes de décision. Les notes de cours présentées...

Grille et conditions de victoire
Modélisation du plateau
Le morpion utilise une matrice de nombres entiers.
- Ronds (Joueur) : représentés par la valeur .
- Croix (Ordi) : représentées par la valeur .
- Cases vides : représentées par la valeur .
Détecter la fin de partie
La fonction fin(mat) vérifie l'état de la grille.
- Somme de 3 : un joueur aligne trois ronds (), victoire du joueur.
- Somme de 12 : l'ordinateur aligne trois croix (), victoire de l'ordinateur.
💡 Astuce : Utiliser des valeurs numériques différentes de évite toute confusion lors du calcul de la somme des lignes ou colonnes.

Entrées joueur et logique de l'IA
Tour du joueur
Le joueur saisit les coordonnées de la case ciblée.
- Coordonnées : conversion des indices utilisateurs vers les indices Python .
- Validation : vérification que la case
mat[a-1][b-1]est bien égale à (libre).
Stratégie de l'ordinateur
L'ordinateur joue de manière semi-intelligente ou aléatoire.
- Recherche de proximité : l'ordinateur tente de poser son pion adjacent à l'un de ses pions existants.
- Aléatoire : si aucune case adjacente n'est libre, il choisit une case au hasard via
random.randint.
💡 Attention : Pense à soustraire aux saisies de l'utilisateur pour ne pas dépasser la taille de la liste et lever une erreur
IndexError.

Boucle de jeu principale
Initialisation
La partie commence par la création d'une grille vide.
- Matrice vide : déclarée sous la forme
[[0,0,0], [0,0,0], [0,0,0]]. - Premiers tours : le joueur commence la partie pour installer le jeu.
Boucle de jeu
Le jeu alterne les tours jusqu'à la fin de la partie.
- Alternance : boucle
whilequi tourne tant quefin(mat)renvoieFalse. - Verdict : affichage final du vainqueur une fois la boucle interrompue.
💡 Attention : Veille à tester la fin de partie immédiatement après le coup du joueur pour éviter que l'ordinateur ne joue sur une grille déjà pleine.

Lancement du programme
L'interface utilisateur
Le programme propose un menu simple pour démarrer ou quitter.
- Choix initial : saisie de pour lancer
organiser_partie()ou pour quitter. - Fermeture : message d'au revoir amical si l'utilisateur décide de ne pas jouer.
Exemple :
- Entrée :
1-> Déclenche le jeu. - Entrée :
0-> Affiche "Au revoir".
💡 Astuce : Convertis toujours l'entrée utilisateur avec
int()pour pouvoir la comparer directement à des nombres entiers.
Si on te demande...
Contenus similaires
Contenus les plus populaires en NSI
9Programmation Orientée Objet, NSI terminale
NSI TERMINALE
Structures de Données: Liste, Pile, File
Explorez les concepts fondamentaux des structures de données en NSI, y compris les listes, les piles et les files. Apprenez les principes FIFO et LIFO, ainsi que leur implémentation en Python. Ce document présente des schémas explicatifs et des exemples pratiques pour une meilleure compréhension.
Réseaux Sociaux et Graphes
Explorez les concepts clés des réseaux sociaux et leur représentation graphique. Ce document couvre l'utilisation de Python pour générer des valeurs aléatoires, les structures de graphes, et les conditions avec des instructions if. Idéal pour comprendre les dynamiques de groupe et les technologies des réseaux sociaux.
Composants de l'Ordinateur
Explorez les éléments essentiels de l'architecture informatique, y compris les cartes d'extension, le disque dur, la mémoire RAM et ROM, ainsi que les périphériques d'entrée et de sortie. Ce résumé détaillé est conçu pour aider les étudiants en NSI à comprendre le fonctionnement des ordinateurs et leurs composants clés.
Histoire de la Photographie
Explorez l'évolution de la photographie, des premières expériences aux techniques modernes. Ce document aborde les pionniers comme Niépce et Daguerre, les procédés photographiques tels que le daguerréotype et l'ambrotype, ainsi que l'impact culturel et social de la photographie à travers les siècles. Type: résumé historique.
Commandes SQL Essentielles
Explorez les commandes fondamentales du langage SQL, y compris INSERT, DELETE, UPDATE, et SELECT. Ce résumé couvre également les contraintes de domaine, de relation et de référence, ainsi que les opérations de tri et de jointure. Idéal pour les étudiants préparant le bac en NSI.
Capteurs et Actionneurs Automatisés
Explorez les capteurs et actionneurs dans les systèmes automatisés. Ce résumé couvre les types de capteurs (contact et sans contact), leurs fonctions (logiques et analogiques), ainsi que les différents types d'actionneurs et leurs applications. Idéal pour les étudiants en ingénierie électrique et en robotique.
Principes des Systèmes d'Exploitation
Explorez les fonctions essentielles des systèmes d'exploitation, y compris la gestion des processus, de la mémoire, et des fichiers. Découvrez les différences entre systèmes libres et propriétaires, ainsi que les principaux systèmes d'exploitation comme Windows, Mac OS, et Linux. Type: Fiche de révisions.
Fonctions en Programmation
Explorez les concepts fondamentaux des fonctions en programmation, y compris la définition, la syntaxe, les paramètres et l'instruction de retour. Ce résumé est idéal pour les étudiants en NSI souhaitant maîtriser les bases des fonctions. Type: résumé.
Contenus les plus populaires
9Règles de Conduite Essentielles
Découvrez les règles fondamentales du code de la route, y compris la signalisation, les limites de vitesse, les distances de sécurité et d'arrêt, ainsi que les normes d'alcoolémie. Ce résumé pratique est conçu pour aider les étudiants à maîtriser les connaissances nécessaires pour réussir leur examen de conduite.
Guide Complet Brevet Français
Préparez-vous efficacement pour le brevet de Français avec ce guide détaillé. Explorez les épreuves, les figures de style, les points de vue narratifs, les fonctions grammaticales, et bien plus encore. Idéal pour les révisions et la compréhension des concepts clés en grammaire et littérature française.
Figures de Style Essentielles
Explorez les figures de style clés en français, incluant la comparaison, la métaphore, la personnification, et plus. Ce document comprend des exemples pratiques et un exercice avec corrigé pour renforcer votre compréhension. Idéal pour les révisions du brevet.
Guerre Totale : 1939-1945
Explorez les événements marquants de la Seconde Guerre mondiale, de l'invasion de la Pologne à la capitulation du Japon. Ce résumé aborde les concepts clés tels que la guerre totale, le génocide des Juifs, la bataille de Stalingrad, et l'impact de la propagande. Idéal pour les étudiants en histoire cherchant à comprendre les enjeux et les conséquences de ce conflit majeur.
Conflits de la Guerre Froide
Explorez les principaux événements et tensions de la Guerre froide (1947-1991), y compris la division de l'Allemagne, la crise de Cuba, la guerre du Vietnam, et la course à l'espace. Cette fiche de révision couvre les idéologies opposées des blocs Est et Ouest, les crises majeures, et l'impact mondial de cette période historique.
Figures de Style Essentielles
Découvrez les figures de style clés, telles que la comparaison, la métaphore, et la personnification, à travers des exemples tirés de la littérature. Ce document de révision est idéal pour préparer le brevet et approfondir votre compréhension des procédés littéraires. Parfait pour les étudiants en français.
Formules Clés en Mécanique
Découvrez les formules essentielles en physique-chimie, incluant la masse volumique, l'énergie cinétique, l'énergie potentielle, et la puissance. Ce résumé pratique est idéal pour les révisions du brevet. Apprenez à calculer P, E, et Ec avec des exemples clairs et des unités appropriées.
Règles de Circulation Essentielles
Découvrez les règles de circulation essentielles pour la sécurité routière. Ce résumé couvre les priorités, les limitations de vitesse, les conditions de dépassement, et les signaux lumineux. Idéal pour les candidats au certificat de sécurité routière (ASSR) et tous ceux qui souhaitent renforcer leurs connaissances en matière de sécurité routière.
Figures de Style Essentielles
Explorez les figures de style clés en français, y compris la comparaison, la métaphore, la personnification, et l'antithèse. Ce document présente des définitions claires et des exemples pour chaque figure, facilitant la compréhension et l'application dans vos écrits. Type: Fiche lexique.
Les étudiants nous adorent, il ne manque plus que toi.
L'application est très facile d'utilisation et bien conçue. Jusqu'à présent, j'ai trouvé tout ce que je cherchais et j'ai pu apprendre beaucoup de choses grâce aux présentations ! Je vais certainement utiliser l'application pour un travail en classe ! Et comme source d'inspiration personnelle, elle est bien sûr aussi très utile.
Cette application est vraiment super. Il y a tellement de fiches de révision et d'aide, [...]. Par exemple, la matière qui me pose problème est le français et l'appli a un choix d'aide très large. Grâce à cette application, je me suis améliorée en français. Je la recommanderais à tout le monde.
Waouh, je suis vraiment abasourdi. J'ai essayé l'application parce que je l'avais déjà vue plusieurs fois dans la publicité et j'ai été absolument choquée. Cette appli est L'AIDE dont on rêve pour l'école et surtout, elle propose tellement de choses, comme des rédactions et des fiches qui m'ont personnellement TRÈS bien aidé.