Aller au contenu

loriss

Membre
  • Contenus

    54
  • Inscription

  • Dernière visite

À propos de loriss

  • Rang
    Forumeur en herbe
  • Date de naissance 04/17/2003

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

  1. loriss

    Morpion en python

    oui il y a eu un quiproquo j'avais bien écrit dès le début c juste que je n'arrive pas à l'écrire en message mon programme fonctionne c'est les fonctions test() que je n'arrive pas à programmer @riad**
  2. loriss

    Morpion en python

    le paramètre ne s'affiche pas quand j'envoie un mess mais je l'ai bien mis.......... en remplaçant par val il me dis NameError: name 'val' is not defined
  3. loriss

    Morpion en python

    mais quand j'enlève je reçois un message d'erreur non désolé je comprend toujours pas @riad**
  4. loriss

    Morpion en python

    avec des recherche j'ai réussi grille=[[0,0,0],[0,0,0],[0,0,0]] def changegrille(i,j,val): grille [j]=val def nSym(nb): if nb==0: return(' ') if nb==1: return('X') if nb==2: return('O') def affichegrille(val): print(" 1) 2) 3)") print(" -------------") print("A)", end='') print((" | "), end='') print((nSym(val[0][0])), end='') print((" | "), end='') print((nSym(val[0][1])), end='') print((" | "), end='') print((nSym(val[0][2])), end='') print(" | ") print(" -------------") print("B)", end='') print((" | "), end='') print((nSym(val[1][0])), end='') print((" | "), end='') print((nSym(val[1][1])), end='') print((" | "), end='') print((nSym(val[1][2])), end='') print(" | ") print(" -------------") print("C)", end='') print((" | "), end='') print((nSym(val[2][0])), end='') print((" | "), end='') print((nSym(val[2][1])), end='') print((" | "), end='') print((nSym(val[2][2])), end='') print(" | ") print(" -------------") def testV(): return grille[0][0]==grille[1][0]==grille[2][0] or grille[0][1]==grille[1][1]==grille[2][1] or grille[0][2]==grille[1][2]==grille[2][2] def testH(): return grille[0][0]==grille[0][1]==grille[0][2] or grille[1][0]==grille[1][1]==grille[1][2] or grille[2][0]==grille[2][1]==grille[2][2] def testD(): return grille[0][0]==grille[1][1]==grille[2][2] or grille[0][2]==grille[1][1]==grille[2][0] import random symboles = 1,2 joueur= random.randint(1,2) def changeJoueur(): global joueur if joueur==1: joueur=2 else: joueur=1 def joue(): while testH()==True & testV()==True & testD()==True: affichegrille(grille) i = input("tu veux jouer sur quelle ligne : ") j = int(input("tu veux jouer sur quelle colonne : ")) i=ord(i)-65 j=j-1 if grille[j]==0: changegrille(i,j,joueur) print(testD()) affichegrille(grille) changeJoueur() changeJoueur() print("Victoire du joueur " + str(joueur)) joue() mais la fonction pour les diagonales ne fonctionne pas, pouvez vous m'aider à comprendre
  5. loriss

    Morpion en python

    grille=[[0,0,0],[0,0,0],[0,0,0]] def changegrille(i,j,val): grille [j]=val def nSym(nb): if nb==0: return(' ') if nb==1: return('X') if nb==2: return('O') def affichegrille(val): print(" 1) 2) 3)") print(" -------------") print("A)", end='') print((" | "), end='') print((nSym(val[0][0])), end='') print((" | "), end='') print((nSym(val[0][1])), end='') print((" | "), end='') print((nSym(val[0][2])), end='') print(" | ") print(" -------------") print("B)", end='') print((" | "), end='') print((nSym(val[1][0])), end='') print((" | "), end='') print((nSym(val[1][1])), end='') print((" | "), end='') print((nSym(val[1][2])), end='') print(" | ") print(" -------------") print("C)", end='') print((" | "), end='') print((nSym(val[2][0])), end='') print((" | "), end='') print((nSym(val[2][1])), end='') print((" | "), end='') print((nSym(val[2][2])), end='') print(" | ") print(" -------------") def testV(): return grille[0][0]==grille[1][0]==grille[2][0] or grille[0][1]==grille[1][1]==grille[2][1] or grille[0][2]==grille[1][2]==grille[2][2] def testH(): return grille[0][0]==grille[0][1]==grille[0][2] or grille[1][0]==grille[1][1]==grille[1][2] or grille[2][0]==grille[2][1]==grille[2][2] def testD(): return ((grille[0][0]==grille[1][1] and grille[1][1]==grille[2][2] and grille[0][0]!=" ") or (grille[0][2]==grille[1][1] and grille[1][1]==grille[2][0] and grille[0][2]!=" ")) import random symboles = 1,2 joueur= random.randint(1,2) def changeJoueur(): global joueur if joueur==1: joueur=2 else: joueur=1 def joue(): while testV()==True or testH()== True : affichegrille(grille) i = input("tu veux jouer sur quelle ligne : ") j = int(input("tu veux jouer sur quelle colonne : ")) i=ord(i)-65 j=j-1 if grille[j]==0: changegrille(i,j,joueur) print(testH()) print(testV()) affichegrille(grille) changeJoueur() changeJoueur() print("Victoire du joueur " + str(joueur)) joue() oui je n'ai plus d'erreur j'ai print mes fonctions pour voir et elle fonctionne bien ,mais quand elle me renvoie flase le programme continue
  6. loriss

    Morpion en python

    @riad** voici ce que elle me renvoie: line 20, in affichegrille print((nSym(val[0][0])), end='') TypeError: 'int' object is not subscriptable
  7. loriss

    Morpion en python

    bonjour, @riad** grille=[[0,0,0],[0,0,0],[0,0,0]] def changegrille(i,j,val): global grille grille[j]=val def nSym(nb): if nb==0: return(' ') if nb==1: return('X') if nb==2: return('O') def affichegrille(val): print(" 1) 2) 3)") print(" -------------") print("A)", end='') print((" | "), end='') print((nSym(val[0][0])), end='') print((" | "), end='') print((nSym(val[0][1])), end='') print((" | "), end='') print((nSym(val[0][2])), end='') print(" | ") print(" -------------") print("B)", end='') print((" | "), end='') print((nSym(val[1][0])), end='') print((" | "), end='') print((nSym(val[1][1])), end='') print((" | "), end='') print((nSym(val[1][2])), end='') print(" | ") print(" -------------") print("C)", end='') print((" | "), end='') print((nSym(val[2][0])), end='') print((" | "), end='') print((nSym(val[2][1])), end='') print((" | "), end='') print((nSym(val[2][2])), end='') print(" | ") print(" -------------") def testV(): return ((grille[0][0]==grille[1][0] and grille[2][0]==grille[0][1] and grille[0][0]!=" ") or (grille[0][1]==grille[1][1] and grille[2][1]==grille[1][1] and grille[0][1]!=" ") or (grille[0][2]==grille[1][2] and grille[2][2]==grille[1][2] and grille[0][2]!=" ")) def testH(): return ((grille[0][0]==grille[0][1] and grille[0][1]==grille[0][2] and grille[0][0]!=" ") or (grille[1][0]==grille[1][1] and grille[1][1]==grille[1][2] and grille[1][0]!=" ") or (grille[2][0]==grille[2][1] and grille[2][1]==grille[2][2] and grille[2][0]!=" ")) def testD(): return ((grille[0][0]==grille[1][1] and grille[1][1]==grille[2][2] and grille[0][0]!=" ") or (grille[0][2]==grille[1][1] and grille[1][1]==grille[2][0] and grille[0][2]!=" ")) import random symboles = 1,2 joueur= random.randint(1,2) def changeJoueur(): global joueur if joueur==1: joueur=2 else: joueur=1 def joue(): while testD() == True or testH() == False or testD() == False : affichegrille(grille) i = input("tu veux jouer sur quelle ligne : ") j = int(input("tu veux jouer sur quelle colonne : ")) i=ord(i)-65 j=j-1 if grille[j]==0: changegrille(i,j,joueur) affichegrille(grille) changeJoueur() changeJoueur() print("Victoire du joueur " + str(joueur)) joue() voici mon programme, je n'arrive pas a faire fonctionner mes fonctions testH(), testV(), testD(), le but est de vérifier si 3 symboles sont alignés horizontalement, verticalement et en diagonal pouvez vous m'aider svp,
  8. loriss

    Morpion en python

    pas de soucis à demain..
  9. loriss

    Morpion en python

    def changegrille(): global val,i,j global A1,A2,A3,B1,B2,B3,C1,C2,C3 j=0 i=0 A1="0" A2="0" A3="0" B1="0" B2="0" B3="0" C1="0" C2="0" C3="0" val = [[A1,A2,A3,],[B1,B2,B3,],[C1,C2,C3]] return val def affichegrille(): print(" 0) 1) 2)") print(" -------------") print("A)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") print("B)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") print("C)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") def testH(): if A1==A2 and A2==A3 or B1==B2 and B2==B3 or C1==C2 and C2==C3: return True else: return False def testV(): if A1==B1 and B1==C1 or A2==B2 and B2==C2 or A3==B3 and B3==C3: return True else: return False def testD(): if A1==B2 and B2==C3 or A3==B2 and B2==C1: return True else: return False changegrille() affichegrille() testH() testV() testD() voici ce que j'ai fait pour l'étape 1.1..... pour l'étape 2.1 je n'ai pas compris ce que l'on me demande précisément : pouvez vous me le reformuler svp 2. Nouvelles variables et fonctions et spécialisation pour le jeu des fonctions existantes. Créez la variable joueur en lui affectant aléatoirement le chiffre 1 ou 2. Créez la fonction afficheGrilleMorp() prenant comme attribut un tableau contenant uniquement les valeurs 0,1 et 2 et qui affiche la grille dans la console avec un espace pour la valeur 0, un X pour la valeur 1 et un O pour la valeur 2. Attention, il faudra aussi que les lignes et les colonnes soient numérotées dans votre affichage. Créez la fonction changeGrilleMorp(i, j, val) qui utilise grille comme variable globale et qui, si la case de grille contient un 0, affecte val à l’élément de grille qui se trouve à la ligne i et à la colonne j et revoie True et renvoie False sinon (les appels à cette fonction se feront sous la forme : changeGrilleMorp(i, j,joueur) ) . La fonction changeJoueur() prendra joueur comme variable globale et qui fera passer la valeur de joueur de 1 à 2 ou de 2 à 1. Créez la fonction joueMorp(), utilisant des variables globales, qui demande au joueur joueur dans quelle case il veut jouer, change la case qui correspond dans la grille avec changeGrilleMorp teste les alignements (et le gain de la partie) et affiche la nouvelle grille. Faire en sorte que 2 joueurs humains puissent jouer l’un contre l’autre.
  10. loriss

    Morpion en python

    merci beaucoup, je continue le reste du TP @riad**
  11. loriss

    Morpion en python

    @riad** du coup tu ne sais pas.....? pour moi
  12. loriss

    Morpion en python

    dsl je ne comprend pas; je vous envoie mes consignes pour être plus clair je suis à l'étape 1.1 Microsoft Word - projet TicTacToe.doc.pdf
  13. loriss

    Morpion en python

    def changegrille(): j=0 i=0 A1="0" A2="0" A3="0" B1="0" B2="0" B3="0" C1="0" C2="0" C3="0" val = [[A1,A2,A3,],[B1,B2,B3,],[C1,C2,C3]] def affichegrille(): print(" 0) 1) 2)") print(" -------------") print("A)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") print("B)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") print("C)", end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print((" | "), end='') print((val[j]), end='') print(" | ") print(" -------------") changegrille() affichegrille() merci bien je ne l'avais pas vue, mais maintenant je plus d'erreur "line 47, in <module> affichegrille() File " "line 20, in affichegrille print((val[j]), end='') NameError: name 'val' is not defined" j'ai regardé les lignes au dessus, @riad**
×