Jeu de scrabble

Résolu/Fermé
Signaler
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022
-
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022
-
Bonjour, je rencontre beaucoup de difficultés dans une question en particulière de mon projet. Vous pouvez m'aider s'il vous plaît à la résoudre

Écrire une fonction bonus() qui initialise et renvoie une liste de listes de caracteres, contenant les bonus des
cases du plateau.
A faire avoir fait(ci dessous), je bloque j'arrive pas à manipuler tous ses colonnes et lignes. Même placer les éléments correctement MT et LD sur la ligne d'indice 0 j'y arrive
Votre aide me sera très utile

cases_MT = [[0,0],[0,7],[0,14],[7,0],[7,14],[14,0],[14,7],[14,14]]
cases_MD = [[1,1],[1,13],[2,2],[2,12],[3,3],[3,11],[4,4],[4,10],[7,7],[10,4],[10,10],[11,3],[11,11],[12,2],[12,12],[13,1],[13,13]]
cases_LT = [[1,5],[1,9],[5,1],[5,5],[5,9],[5,13],[9,1],[9,5],[9,9],[9,13],[13,5],[13,9]]
cases_LD = [[0,3],[0,11],[2,6],[2,8],[3,0],[3,7],[3,14],[6,2],[6,6],[6,8],[6,12],[7,3],[7,11],[8,2],[8,6],[8,8],[8,12],[11,0],[11,7],[11,14],[12,6],[12,8],[14,3],[14,11]]



45 réponses

Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
Bonjour Theo,

Même placer les éléments correctement MT et LD sur la ligne d'indice 0 j'y arrive

Ben si tu y arrives, pas de problème ...

C'est quoi ta question précisément ?
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Ma question c'est comment faire pour bien placer chacun à sa place les bonus parceque c'est pas écrire une liste de liste de leur position qui va m'aider
Ou dois je commencer pouf réussir à le faire
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
comment faire pour bien placer chacun à sa place

Que veux tu dire ?
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Je parle parle la des bonus
MT
MD
LD
LT
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Par exemple comment faire pour bien placer sur la ligne d'indice 0,les 3 MT(colonne 0,colonne7 et colonne 14)
LD(colonne 3 et colonne 11)
Et les chaînes de caractères vides dans les cases contenant aucun bonus
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
Ah ok , tu parles de faire ça graphiquement : dessiner les cases rouges MT sur un damier
de 15 x 15 cases ?
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Oui c'est ça
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
As-tu commencé à coder ? ne serait-ce que pour afficher le damier, par exemple ...

Tu peux afficher ton code ici, en respectant les balises de code, le mode d'emploi ici:

https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Visuellement, ça doit ressembler à ceci (avec la coloration syntaxique) :

def test():
    print('test')

test()
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Moi comme je vous dit j'arrive même pas à faire la ligne 0
J'arrive à bien placer par exemple MT et les chaînes vides mais pas LD

L=[] 
for i in range(0,14,7):
L.append("MT")
for j in range(1,6):
L.append("")
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Bon ça c'est juste un essai. Si j'arrive pas déjà à comprendre comment bien placer chaque élément sur la 1er ligne, aucune chance que j'y arrive pour 15 lignes et 15 colonnes
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
L=[] 
for i in range(0,14,7):
       L.append("MT")


As-tu essayé de faire un print(L) pour voir ce qu'il contient exactement ?
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Oui je l'ai fait. C'est pourquoi j'ai dit j'arrive à bien placer MT et les chaînes vides mais pas LD
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
moi, quand je fait
 print(L)


je vois ça : ['MT', 'MT'] une liste de 2 chaines de caractères MT

c'est quoi l'intérêt ?

En plus ta boucle sur (0,14,7) ne sert à rien, tu ferais

L=[] 
for i in range(0,2):
       L.append("MT")


ca donnerait exactement le même résultat ...

et à la fin de tes 2 boucles, ca donne ça:

['MT', 'MT', '', '', '', '', '']
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Le code que j'ai copié collé c'est pas le bon, j'ai supprimé le bon et je me souviens plus comment j'avais trouvé vi que je testait comme ça sans arrêt jusqu'à tomber sur le bon

Quescequ'il faut faire pour trouver la solution, un indice pour que je puisse avancer
0
Messages postés
18266
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
17 janvier 2022
998
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Moi mon problème principale c'est comment on place chaque jeton à sa place
Par e emple à la ligne 0,il faut que j'ai
[MT, "", "", LD, "", "", "", MT, "", "", "", LD, "", "", MT{
..
Je dois faire la même chose pour chaque ligne.
Ensuite je dois tout mettre dans une grande liste(liste de liste)

Mais d'abord, il faut que j'arrive d'abord à comprendre comment faire pour la ligne 0,avant d'espérer trouver pour les autres lignes
0
Messages postés
18266
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
17 janvier 2022
998
est-ce ton premier exercice avec des listes en Python?
as-tu déjà fait des exercices avec des index?

l'exercice que tu fais suppose que tu maitrises cela.
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Oui bien sur, c'est une question concernant un projet que je dois rendre
Oui les indices je les maîtrises
Par exemple MT pour la ligne 0 est en indice 0, 7 et 14....
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
ah ok, tu nous balances un code pas bon, comme ça, au hasard

des fois qu'on aurait une boule de cristal !

Il faut croire que tu ne maitrises pas

Tu devrait chercher sur internet comment créer un tableau à 2 dimensions, ici 15 lignes par 15

colonnes avec des "listes en compréhension" par exemple

Ensuite tu pourrais le remplir en adressant ligne et colonne :

tableau[0][7] = 'MT', etc ...
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Je sais comment faire, le principe mais l'appliquer c'est dure
En tout cas pour les liste compréhension je sais qu'on doit faire
Exemple :MT dans toutes les cases
[["MT"for j in range(15)]for i in range(15)]
0
Messages postés
1189
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
30 septembre 2021
128
hé ben voila...

on y arrive tout doucement ...

sauf qu'au départ il faut faire un tableau comme tu le fais mais entièrement vide et ensuite, il

n'y a plus qu'à remplir uniquement ce qui doit l'être avec 'MT', 'MD', etc ...

comme je t'ai montré dans mon message précédent (tableau[ligne][colonne] = ...)
0
Messages postés
72
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
12 janvier 2022

Tableau=[]
for lignes in tableau:
    for colonnes in tableau:
        Tableau[lignes][colonnes]==
        


Je peux remplacer certes ligne et collonne par leur valeurva la main et e rire ceci égale ceci mais ça va être un peu long et je pense pas que c'est la bonne méthode

Du coip les listes MT,LT,MD et LD que je vous ai donné plus haut,peux t il m'aider ici dans ce cas?Si oui comment puis je m'en servir
0