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 :

jeu de la vie


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2022
    Messages : 8
    Par défaut jeu de la vie
    Bonjour,

    Je bloque à la question 2 du jeu de la vie.

    j'en suis là pour définir une grille contenant des zéros :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def creation_grille_vide(nombreLignes, nombreColonnes):
        grid = [[]] * nombreLignes
        for ligne in range(nombreLignes):
            grid[ligne] = [0] * nombreColonnes
        return grid
    Ensuite, je bloque, il faut créer une fonction qui affiche la grille avec des cellules vivantes qui affiches v et les cellules mortes qui affiche -.
    J e débute et donc je galère, j'ai essayé d'aller un peu partout sur internet mais pas facile.
    Pourriez vous me guider s'il vous plaît?
    Merci
    SBO

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 968
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 968
    Par défaut
    Cela manque de précisions tout ça.

    Ces cellules vivantes et morte sont elles-transmises ? Si oui, sous quelle forme ?
    Ces cellules vivantes et morte sont elles-calculée ? Si oui, en fonction de quoi ?
    Ces cellules vivantes et morte sont elles choisies au hasard ?

    La grille est-elle fourni ou doit-tu la créer ?

    Peux-tu montrer ce que tu as tenté ?

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2022
    Messages : 8
    Par défaut Précisions et tentatives
    bonjour,

    voici les précisions :
    pour savoir si une cellule est vivante à l'instant n, on compte le nb de cellules vivantes parmi les 8 voisines à l'instant n-1.
    A chaque étape n, l'état de chaque cellule ne dépend que de son état et de celui des cellules voisines à l étape n-1.

    Si le nb de cellules vivantes voisines est inférieur ou égal à 1 ou supérieur ou égal à 4 alors la cellule est morte à l'instant n, si le nb est égal à 3, alors la cellule est vivante à l'instantn, si le nb est égal à 2, alors la cellule ne change pas d'état par rapport à n-1.

    On doit travailler sur un plateau nxn avec n=10. Le plateau est codé par une listes d'entiers à 2 dimensions appelés grille. Les cellules vivantes ont pour valuer 1 et les mortes 0.
    Il n'a pas de grille type, juste un exemple.
    On nous demande d'abord de coder une fonction creer_geillevide qui donnera une liste et retournera une grille contenant des zéros: j'ai fait ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def creation_grille_vide(nombreLignes, nombreColonnes):
        grille = [[]] * nombreLignes
        for ligne in range(nombreLignes):
            grille[ligne] = [0] * nombreColonnes
        return grille
    Ensuite on demande une fonction affiche grille(grille : list) avec en paramètres une grille et les cellules representées afficheront v lorsqu'elles sont vivantes et - lorsqu'elles sont mortes.

    j'ai essayé ça (je sais c'est nul mais je débute):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def affiche_grille(grille):
        morte ='v'
        vivante='-'
        print(grille)
    puis il faudra créer une fonction initialisation aleatoire(grille:list) avec une liste d'entiers qui affecte des valeurs au hasard de 0 et 1 de façon equiprobable

    J'ai beaucoup cherché mais je sèche
    Merci encore
    SBO

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 968
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 968
    Par défaut
    Donc, si j'ai bien compris, on te donne un grille avec la situation à l'instant T et tu dois rendre la même grille avec la situation à l'instant T+1.
    Et pour déterminer cette situation à T+1, il faut appliquer certaines conditions.

    Sur le principe, je ne vois rien de compliqué, il faut appliquer les conditions qu'on te donnes.
    Celles-ci :
    Si le nb de cellules vivantes voisines est inférieur ou égal à 1 ou supérieur ou égal à 4 alors la cellule est morte à l'instant n, si le nb est égal à 3, alors la cellule est vivante à l'instant n, si le nb est égal à 2, alors la cellule ne change pas d'état par rapport à n-1.
    Je te suggère, avant de commencer à coder, de poser les différents cas sur papier.
    De cette manière tu auras quelque chose de concret et ce sera plus facile à traduire en code.

  5. #5
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2022
    Messages : 8
    Par défaut suite
    Merci. c'est ce que j'ai fait avec l'exemple donnée dans l'exercice. J'ai compris le principe.
    J'ai trouvé des pistes mais je voulais faire étape par étape sans avancer jusqu'au bout si quelque chose ne fonctionnait pas. C'est pour cela que je vouslais de l'aide sur comment afficher les v et les - sur la grille avec une fonction. J'ai mis la question 3 parce que ça me paraissait bizarre de devoir définir les v et les - et ensuite faire un mode aléatoire d'attribution de la grille en repassant par des 0 et des 1

  6. #6
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2022
    Messages : 8
    Par défaut
    rebonjour,
    quand il demande :
    Ensuite on demande une fonction affiche grille(grille : list) avec en paramètres une grille

    j'imagine un début comme cela

    Code :

    def affiche_grille()

    mais je mets quoi dans les parenthèses ??

Discussions similaires

  1. Problème jeu de la vie de Wolfram
    Par romromp dans le forum Pascal
    Réponses: 14
    Dernier message: 11/03/2007, 19h58
  2. algorithme d'évolution du "jeu de la vie" en caml
    Par nono88 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 13/12/2006, 00h56
  3. Conway's life (jeu de la vie) pour images
    Par O( N ) dans le forum C
    Réponses: 1
    Dernier message: 26/09/2006, 02h13
  4. [Conception] Jeu de la vie
    Par deuscapser dans le forum Général Java
    Réponses: 16
    Dernier message: 09/03/2006, 12h47
  5. [VB] projet à réaliser: Jeu de la vie
    Par mauriiice dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 02/12/2005, 20h06

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