Mélange de liste
Jean
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonsoir,
Je suis en première avec la spécialité NSI et je dois rendre un projet dans pas très longtemps. Le problème est que je n'arrive pas à écrire une fonction. Voici la question : écrire une fonction melange(jeu) qui renvoie la liste mélangée du jeu de carte. Pourriez-vous m'aider ? merci d'avance.
Voici ce que j'ai commencé à faire (je sais pas comment on partage du code exactement):
import random
couleur=['pique','coeur','carreau','trèfle']
print("les couleurs sont : ",couleur)
valeurs=['As','2','3','4','5','6','7','8','9','10','j','q','k']
print("les valeurs sont : ",valeurs)
def creer_jeu():
return [(x,y) for x in valeurs for y in couleur]
carte = creer_jeu()
print("création d'un jeu de cartes : ",carte)
def melange(jeu):
jeu = []
random.shuffle(jeu)
return jeu
Je suis en première avec la spécialité NSI et je dois rendre un projet dans pas très longtemps. Le problème est que je n'arrive pas à écrire une fonction. Voici la question : écrire une fonction melange(jeu) qui renvoie la liste mélangée du jeu de carte. Pourriez-vous m'aider ? merci d'avance.
Voici ce que j'ai commencé à faire (je sais pas comment on partage du code exactement):
import random
couleur=['pique','coeur','carreau','trèfle']
print("les couleurs sont : ",couleur)
valeurs=['As','2','3','4','5','6','7','8','9','10','j','q','k']
print("les valeurs sont : ",valeurs)
def creer_jeu():
return [(x,y) for x in valeurs for y in couleur]
carte = creer_jeu()
print("création d'un jeu de cartes : ",carte)
def melange(jeu):
jeu = []
random.shuffle(jeu)
return jeu
4 réponses
-
Bonjour
En Python, l’indentation est primordiale, or par défaut le site ne la conserve pas.
Pour la conserver il faut utiliser les balises de code. Voir ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
On pourra commencer à essayer de t’aider quand tu auras reposté correctement ton code.
-
import random couleur=['pique','coeur','carreau','trèfle'] print("les couleurs sont : ",couleur) valeurs=['As','2','3','4','5','6','7','8','9','10','j','q','k'] print("les valeurs sont : ",valeurs) def creer_jeu(): return [(x,y) for x in valeurs for y in couleur] carte = creer_jeu() print("création d'un jeu de cartes : ",carte) def melange(jeu): jeu = [] random.shuffle(jeu) return jeu -
Bonsoir Jean,
Vous y étiez presque et j'ai saisi l'opportunité de me plier à l'exercice.
En fait, dans la fonction, c'est carte qu'il faut soumettre à shuffle et non jeu, et là, ca fonctionne, pour moi.
def melange(carte): random.shuffle(carte) return carte melange(carte) print() print("mélange: ",carte)
J'ai dû faire une erreur dans la déclaration du langage. Désolé Whismeril. Je ferai mieux la prochaine fois.-
-
Bonsoir;
Merci beaucoup pour l'aide !
Maintenant cela fait 3-4 jours que je suis bloqué à la question suivante qui est:
"Écrire une fonction distribue (jeu, n) qui distribue équitablement les cartes du jeu aux n joueurs et renvoie la liste pot des cartes restante non distribuées, éventuellement vide."
Pourriez-vous m'aider encore une dernière fois s'il vous plaît, je suis vraiment perdue..
import random couleur=['pique','coeur','carreau','trèfle'] print("les couleurs sont : ",couleur) valeurs=['As','2','3','4','5','6','7','8','9','10','j','q','k'] print("les valeurs sont : ",valeurs) def creer_jeu(): return [(x,y) for x in valeurs for y in couleur] carte = creer_jeu() print("création d'un jeu de cartes : ",carte) def melange(carte): random.shuffle(carte) return carte melange(carte) print() def distribue(jeu,n): Njoueur = int(input("choisir un nombre de joueurs"))
-
-
2 points
Écrire une fonction distribue (jeu, n) qui distribue équitablement les cartes du jeu aux n joueurs
Cela veut dire que le nombre de joueurs est connu avant cette fonction.
Donc tu n’as pas à le demander dans la fonction.- dans la vraie vie, comment se passe une distribution? Si besoin réfléchis pour 2 joueurs, 3, 4 et généralise pour n?