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 :

Modifier liste aléatoirement


Sujet :

Python

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Modifier liste aléatoirement
    Bonjour à tous
    Je suis actuellement un étudiant en informatique , qui n'en touche pas une (j'implore votre indulgence si je met quelque chose de parfaitement stupide).

    Dans le cadre d'un projet à faire , je dois créer un tableau 2 dimensions contenant n listes de n éléments.
    Ces listes , composés de 1 et de 0 doivent donner ceci à l'affichage.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    x x x x x
    x        x
    x        x
    x        x
    x x x x x
    Jusque la , j'y arrive correctement avec une fonction creer_tableau qui retourne la liste l et une fonction print_tableau(l) qui l'affiche correctement.

    La difficulté est que ma fonction creer_tableau doit aussi remplir m espaces vides avec x à des indices aléatoires ( les bords x ne doivent pas être modifiés). m est un nombre maximum.

    J'ai passé beaucoup de temps à essayer avec randint mais rien à faire , je n'y arrive pas. Je ne dois sans doute pas tout comprendre ...
    Voila je vous remercie d'avance si vous savez me venir en aide.

    Milyu

  2. #2
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    bonjour,
    peux-tu poster ce que tu as fait ?

  3. #3
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Cela ressemble beaucoup à cette discussion:
    http://www.developpez.net/forums/d99...rree-probleme/
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 3
    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
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    n = int(raw_input("Donnez la dimension n du labyrinthe svp : \n"))
    m = int(raw_input("Donnez le nombre m de murs intérieurs : \n"))
     
     
     
     
    def random () :
        x = randint (0,1)
        return x
     
    def creer_labyrinthe(n,m):
        ligne_intermediaire = (2*[1])
        for i in range (n-2):
            nombre_murs = ligne_intermediaire.count(1)
            if (nombre_murs-2) < m:
                ligne_intermediaire.insert (1,random())
            else:
                ligne_intermediaire.insert (1,0)
     
        return ligne_intermediaire    
     
     
    def print_labyrinthe (l):
     
        premiere_ligne = (n*[1])
        derniere_ligne = (n*[1])
     
        print "Voici un tel labyrinthe : "
        print premiere_ligne
        for i in range (n-2):
            print creer_labyrinthe(n,m)
     
        print derniere_ligne
     
     
    print_labyrinthe(1)
    Ceci est donc le premier code que j'avais fais. J'avais reussi à mettre de l'aléatoire dedans , mais lors de l'affichage , il y a des crochets et je n'arrive pas à convertir les 1 en 'x' et les 0 en espace.

    (Je me demandais d'ailleurs si je ne pourrais pas récupérer les élèments 1 du tableau dans une chaine ou qui afficherait 'x' et les élèments 0 ou il afficherait ' ' à chaque tour de boucle for).

    J'ai aussi vu un autre post sur le forum ou un membre donnait un code pour créer un labyrinthe , convertir les 1 et les 0 et l'afficher correctement.
    Mais dans celui la , je n'arrive pas à complèter le tableau par des x mis aléatoirement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    n = 5
    m=3
    lab = []
    for i in range(n):
        lab.append([])
        for j in range(n):
            if i==0 or i==n-1 or j==0 or j==n-1:
                lab[-1].append('x')
            else:
                lab[-1].append(' ')
    for i in range(n):
        for j in range(n):
            print lab[i][j],
        print
    J'espère qu'il est possible que j'arrive à la solution sur au moins un des 2 codes
    Merci d'avance!

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Zavonen Voir le message
    Cela ressemble beaucoup à cette discussion:
    http://www.developpez.net/forums/d99...rree-probleme/
    Tout à fait , il doit s'agir du même programme. Cela dit , j'ai jugé utile de refaire un sujet , étant donné que l'autre ne me donnait pas de réponse

Discussions similaires

  1. Access Liste aléatoire
    Par Suskes dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 18/07/2007, 16h31
  2. Réponses: 3
    Dernier message: 29/11/2006, 20h29
  3. Réponses: 6
    Dernier message: 24/08/2006, 14h56
  4. Mélanger une liste aléatoirement
    Par Ickou dans le forum Langage
    Réponses: 19
    Dernier message: 23/12/2005, 13h56

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