Aide pour Programmation Python Puissance 4

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Apr 27, 2010
1,202
0
942
29
Bonjour à tous !

Etant donner que j'ai beaucoup de mal et que j'ai une épreuve du BAC à passer dessus , j'ai besoin de votre aide afin de comprendre la majorité du code ci-dessous :

Points que je ne comprends pas :
-Les valeurs pour x / y etc..
-Dictionnaires de reconnaissance
- def click etc.. avec les valeurs qui suivent
- Et chaque if pour les pieces jaunes et rouges

Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris!
 
Last edited:

Evaelis

La Voix de la Sagesse
V
Ancien staff
Apr 28, 2010
22,949
468
1,699
Valhalla
Alors:
def click(self, event)
Ici self pointe sur l'instance de ta classe et event te donnera les informations du clique, si je me rappelle bien sur TKinter c'est la position X, Y et le clique en question.
Pour les if je ne vois pas exactement des quels tu parles.

Au niveau du dictionnaire de reconnaissance, celui-ci contient la position des cases (coin haut gauche et bas droite) ainsi que le numero de la case.
La facon dont c'est code est vraiment bizarre car un simple modulo te permettrait d'obtenir ta ligne et ta colonne plutot que de boucler sur tout le dictionnaire.
De meme la verification de victoire est faites bizarrement, une recursive avec la direction permet de faire cela en bien moins de tests.
Du coup tes valeurs x et y represente la position en pixel et non une position dans une tableau.
Exemple : 0,9 | 25,3 | 31,48 | 10,10 => Case 0,0
 
Apr 27, 2010
1,202
0
942
29
Merci pour ta réponse !
Mais pour toi , tu pourrais coder facilement un puissance 4 (avec l'interface graphique qui correspond) en une 50taine de ligne ?
 

Evaelis

La Voix de la Sagesse
V
Ancien staff
Apr 28, 2010
22,949
468
1,699
Valhalla
En estimant je dirais que je te le fais en une centaine de ligne sans l'interface ou le draw (30 lignes je pense, je ne connais pas trop Tkinter), mais le nombre de lignes ne veut rien dire pour les performances.