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

Programmation multimédia/Jeux Python Discussion :

Jeu de carte (président)


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Jeu de carte (président)
    Bonjour, j'ai pour projet en informatique de crée un jeu de carte (Jeu du president ) j'ai réussi à crée le jeu de carte et à le mélanger mais je n'arrive pas à le distribué aux joueurs .
    Pour que ma question soit clair je vais expliquer comment j'ai pensé le faire et mettre mon code apres .
    Je demande donc en premier le nombre de joueurs qui peut être 4 5 ou 6
    J'ai ensuite crée une liste Joueurs qui comporte elle meme 6 sous liste .
    J'ai fait correspondre en suite chaque indice de la liste Joueurs a J1,J2,J3,J4 .... pour que ce soit plus simple ulterieurement .
    Mon but serai de crée une boucle qui parcours le jeu de carte (melanger) carte par carte et qui met une carte dans le joueurs 1 la suivante dans le joueurs 2 et ainsi de suite jusqu'a la fin de la liste .
    Pour cela il faut que ma boucle parcours le jeu de carte mais aussi la liste de joueurs en prenant aussi en compte le nombre de joueurs fournit au debut .
    et je bloque completement je n'arrive pas a faire une double boucle et meme si cela existe .
    J'ai pensé a une autre solution aussi, par exemple faire ensorte que la distribution ne ce fasse pas carte par carte mais directement le nombre de carte que le joueurs doit posseder ... mais encore là je ne voit pas trop comment faire .
    Si vous pouvez m'aider ou me donner une piste merci

    Code python : 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
    37
    38
    39
    40
    41
    42
    43
     
     
    # Melange et Distribution des cartes #
     
                                # Creation du Paquet De Jeu de 52 cartes #
     
    # definition des variables pour la création du paquet de Jeu 
    enseigne=["pique","carreau","trefle","coeur"]
    valeur=[1,3,4,5,6,7,8,9,10,"valet","dame","roi",2] 
     
     
    def creation():
        return [(x,y) for x in valeur for y in enseigne]
     
    PaquetDeCarte = creation()
                                # Creation de la fonction Melange de cartes #
     
    import random
     
    PaquetDeCarteMelanger = random.sample(PaquetDeCarte,52)
     
                                # Création du programme de distribution de carte pour n joueurs #
     
    NombreJoueurs = int(input("Quel est le nombre de joueurs ? (entre 4 et 6 )"))
     
    Joueurs = [[],[],[],[],[],[]]
     
     
    J1 = Joueurs[0]
    J2 = Joueurs[1]
    J3 = Joueurs[2]
    J4 = Joueurs[3]
    J5 = Joueurs[4]
    J6 = Joueurs[5]
     
     
     
     
     
    NbDeCarteParJoueurs = int (52 / NombreJoueurs)
    print(NbDeCarteParJoueurs)
     
    for carte in PaquetDeCarteMelanger:

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Salut,

    C'est fort désordonné comme code, quelques règles:

    * Met un encodage au début de ton fichier
    * Crée tes fonctions en premier
    * Évite les nombreuses lignes vides et l'étalement des commentaires

    Pour distribuer les cartes, il serait préférable d'utiliser une fonction génératrice.

    Quelque chose dans ce genre:
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    # -*- coding: utf-8 -*-
    import random
     
    def creation():
        enseignes = ["pique","carreau","trefle","coeur"]
        valeurs = [1,2,3,4,5,6,7,8,9,10,"valet","dame","roi"]
        return [(x,y) for x in valeurs for y in enseignes]
     
    def get_nombre_joueur():
        while 1:
            n = input('Nombre de joueurs: ')
            try:
                return int(n)
            except:
                pass
     
    def get_carte(cartes):
        # Fonction génératrice
        sabot = random.sample(cartes, 52)
        while sabot:
            # tant qu'il reste des cartes dans le sabot
            yield sabot.pop()
     
    n_joueurs = get_nombre_joueur()
    joueurs = [[] for i in range(n_joueurs)]
    # création du générateur de cartes
    gen = get_carte(creation())
     
    # distribution, exemple 8 cartes par joueur
    for i in range(8):
        for j in joueurs:
            try:
                j.append(next(gen))
            except StopIteration:
                # plus de carte
                pass
     
    # contrôle
    for j in joueurs:
        print(j)
     
    # ensuite pour distribuer une nouvelle carte
    try:
        joueur.append(next(gen))
    except StopIteration:
        # plus de carte

Discussions similaires

  1. [choix de techno]comment programmer un jeu de carte
    Par roilion dans le forum Général Conception Web
    Réponses: 8
    Dernier message: 16/08/2010, 16h43
  2. [C++] Urgent Développeur pour Jeu de cartes simple
    Par koros21 dans le forum Projets
    Réponses: 6
    Dernier message: 10/09/2006, 13h19
  3. [structure de donnée] jeu de carte
    Par .:dev:. dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 20/05/2006, 15h44
  4. [VB] Recrutement pour un Jeu de cartes WHIST
    Par Vesta dans le forum Projets
    Réponses: 5
    Dernier message: 13/09/2005, 19h43
  5. IA avec un jeu de cartes
    Par Captain_JS dans le forum Intelligence artificielle
    Réponses: 3
    Dernier message: 07/02/2005, 10h07

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