IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Aide pour un programme python pour un morpion


Sujet :

Python

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2019
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Aide pour un programme python pour un morpion
    Bonjour alors j'ai besoin d'aide pour un programme( un morpion) car il faut que je le modifie mais je ne sais pas comment faire. J'utilise le logiciel EduPython
    Je dois partir de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    def AfficheGrille(grille):
          for j in [0,3,6]:
             print("-----------------")
             for i in range(3):
                print("|"+str(grille[i+j]),end=' ')
             print("|")
          print("-----------------")7
    jeu=[0,1,0,0,2,0,0,2,1]
    AfficheGrille(jeu)
    donc avec ce programme j'optien un morpion mais on me demande:"Ecrire une fonction GrilleDebut(n) qui a pour paramètre un entier n et qui renvoie une liste de longueur n ne contenant que des zéros.Quelle instruction faut-il écrire pour obtenir la grille initiale du morpion?" et je n'arrive pas a le faire il y a aussi une deuxième question "Ecrire une fonction JeuPossible(L) qui renvoie True si la liste L donnée en paramètre contient un 0 et False sinon. A quoi correspondent ces deux valeurs booléenes pour une grille de morpion donnée?

    Donc je dois écrire 2 programme mais j'ai tout essayé j'ai toujours des erreurs de syntax donc si quelqu'un pourrais m'aider!
    Merci

  2. #2
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 813
    Points : 7 102
    Points
    7 102
    Par défaut
    Quelle instruction faut-il écrire pour obtenir la grille initiale du morpion?
    Est-ce que vous vous êtes renseigné sur l'objet list en python ? Si oui, que n'avez-vous pas compris ?

    A quoi correspondent ces deux valeurs booléenes pour une grille de morpion donnée?
    Je suppose que c'est pour indiquer s'il est possible de jouer, tant qu'il y a des 0, on peut continuer à proposer une case.

    Donc je dois écrire 2 programme
    Non, 1 seul programme suffit. Et dans ce programme se trouvera 2 fonctions.
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2019
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    def AfficheGrille(n):
        n=0
        for j in [0,3,6]:
            print("-----------------")
            for i in range(3):
                print("|"+str(n[i+j]),end='')
            print("|")
        print("-----------------")
    jeu=[n]
    AfficheGrille(jeu)
    J'ai fais ca mais ca marche pas je comprend pas

  4. #4
    Membre expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 873
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 873
    Points : 3 717
    Points
    3 717
    Par défaut
    Salut,

    Ce n'est pas très difficile de faire les deux fonctions...

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2019
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Beginner. Voir le message
    Salut,

    ...
    Oui mais j'ai rater plusieurs cours ma prof ma dit qu'il faut initialiser une liste mais bon.
    Et c'est pas en disant"Ce n'est pas très difficile de faire les deux fonctions" que je vais y arriver

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par marie.775 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    def AfficheGrille(n):
        n=0
        for j in [0,3,6]:
            print("-----------------")
            for i in range(3):
                print("|"+str(n[i+j]),end='')
            print("|")
        print("-----------------")
    jeu=[n]
    AfficheGrille(jeu)
    J'ai fais ca mais ca marche pas je comprend pas
    Quel est le but de l'instruction n=0 au début de la fonction ? Je sais pas moi, quand je code j'ai une idée en tête et je cherche à transcrire cette idée. Là je vois une fonction qui reçoit une valeur venue de l'appelant et sa première action est de remplacer cette valeur par 0...

    Citation Envoyé par marie.775 Voir le message
    Ecrire une fonction GrilleDebut(n) qui a pour paramètre un entier n et qui renvoie une liste de longueur n ne contenant que des zéros.
    Ecrire une fonction JeuPossible(L) qui renvoie True si la liste L donnée en paramètre contient un 0 et False sinon.
    Perso je ne vois pas trop l'intérêt de ces fonctions pour un jeu de morpion...?

    Citation Envoyé par marie.775 Voir le message
    Et c'est pas en disant"Ce n'est pas très difficile de faire les deux fonctions" que je vais y arriver
    Oui mais là c'est tellement évident, tellemement basique, qu'on est désarmés pour t'aider à le trouver par toi-même. Soit tu sais le faire, soit tu le sais pas et dans ce cas il faut tout reprendre du début.
    GrilleDebut=lambda n: [0,] * n et JeuPossible=lambda L: 0 in L.

    Citation Envoyé par marie.775 Voir le message
    Oui mais j'ai raté plusieurs cours
    Un très gros "plusieurs" alors. Parce que comme tu le vois, je n'ai fait qu'encapsuler dans ces fonctions des outils natifs Python faisant déjà le travail demandé...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  7. #7
    Membre émérite

    Homme Profil pro
    Ingénieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Points : 2 328
    Points
    2 328
    Par défaut
    Citation Envoyé par marie.775 Voir le message
    Oui mais j'ai rater plusieurs cours ma prof ma dit qu'il faut initialiser une liste mais bon.
    Et c'est pas en disant"Ce n'est pas très difficile de faire les deux fonctions" que je vais y arriver
    Plonge toi dans un tuto pour combler ce que tu as loupé en cours.

  8. #8
    Nouveau Candidat au Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Novembre 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2019
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Bonjour

    Quel est le but de l'instruction n=0 au début de la fonction ? Je sais pas moi, quand je code j'ai une idée en tête et je cherche à transcrire cette idée. Là je vois une fonction qui reçoit une valeur venue de l'appelant et sa première action est de remplacer cette valeur par 0...


    Perso je ne vois pas trop l'intérêt de ces fonctions pour un jeu de morpion...?


    Oui mais là c'est tellement évident, tellemement basique, qu'on est désarmés pour t'aider à le trouver par toi-même. Soit tu sais le faire, soit tu le sais pas et dans ce cas il faut tout reprendre du début.
    GrilleDebut=lambda n: [0,] * n et JeuPossible=lambda L: 0 in L.


    Un très gros "plusieurs" alors. Parce que comme tu le vois, je n'ai fait qu'encapsuler dans ces fonctions des outils natifs Python faisant déjà le travail demandé...
    Oui mais ca c'est dans mon cours mais je ne sais pas comment faire un morpion avec que des cases vides je comprend pas je vois pas ce qui a de logique

  9. #9
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par marie.775 Voir le message
    mais je ne sais pas comment faire un morpion avec que des cases vides je comprend pas
    Déjà il faut distinguer "le jeu" et "l'affichage du jeu".
    Le jeu, c'est par exemple un tableau contenant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [[0, 1, 2],
    [1, 2, 0],
    [2, 0, 1]]
    L'affichage, c'est par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    -------------
    |   | X | O |
    |---+---+---|
    | X | O |   |
    |---+---+---|
    | O |   | X |
    -------------
    Il est évident que c'est plus facile de programmer des recherches de coups sur le jeu avec les valeurs numériques ; et que l'affichage ne sera qu'un détail (une fonction dédiée).

    Citation Envoyé par marie.775 Voir le message
    je vois pas ce qui a de logique
    Ah ben désolé mais voir la logique qui sous-tend un algorithme c'est personnel et ça ne s'apprend pas. Enfin si, ça s'apprend mais ça s'apprend au collège en mathématiques quand on te fait travailler les raisonnements en partant d'affirmations "A" et "B" pour en déduire "C".
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. [Python 3.X] Python: besoin d'aide pour un petit programme
    Par Intrepid13 dans le forum Général Python
    Réponses: 9
    Dernier message: 14/10/2015, 19h19
  2. [Python 3.X] Python: besoin d'aide pour un petit programme
    Par Intrepid13 dans le forum Général Python
    Réponses: 2
    Dernier message: 11/10/2015, 04h21
  3. Aide pour faire un programme python.
    Par alexwol dans le forum Programmation multimédia/Jeux
    Réponses: 4
    Dernier message: 03/10/2015, 12h11
  4. Aide question sur programmation python débutant
    Par LoloB12 dans le forum Général Python
    Réponses: 2
    Dernier message: 02/01/2015, 13h21
  5. Aide pour exercice livre "Apprendre à programmer en Python" par Swinnen
    Par reivilo1982 dans le forum Général Python
    Réponses: 4
    Dernier message: 28/02/2011, 12h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo