Bonjour,
J'ai utilisé python pour écrire un algorithme du jeu mastermind. Mon programme est comme suit :
Comme vous pouvez le voir j'ai utilisé des classes et des méthodes. L'ensemble fonctionne bien sauf le compteur (ligne 37 à 54). Je n'arrive pas à trouver le problème. Pouvez-vous m'aider s'il vous plaît? D'avance je vous remercie.Code:Ligne Instruction 01 from random import randrange 02 from Tkinter import * 03 class Aleatoire(): 04 def __init__(self): 05 nbEssaisAutorises = 10 06 l = [randrange(0,9) , randrange(0,9) , randrange(0,9) , randrange(0,9) , randrange(0,9)] 07 self.aleatoire=l 08 09 class Choix_joueur(Tk): 10 def __init__(self,l): 11 Tk.__init__(self) 12 self.chiffre = l 13 self.textnom = Entry(self) 14 self.textnom.pack() 15 but1 = Button(self, text = "Quitter",command = self.quit) 16 but1.pack() 17 but2 = Button(self, text = "Envoyer",command = self.envoi) 18 but2.pack() 19 20 def envoi(self): 21 self.proposition = self.textnom.get() 22 print(self.proposition) 23 24 def nombresimilaire(self): 25 self.proposition = str(self.proposition) 26 i = 0 27 res = 0 28 while i<len(l): 29 if l.count(i) != self.proposition.count(i): 30 if l.count(i) > self.proposition.count(i): 31 res = l.count(i) - l.proposition.count(i) 32 else: 33 res = l.proposition.count(i) 34 i=i+1 35 return res 36 37 def compteur_places(self): 38 l1 = self.aleatoire 39 l2 = self.proposition 40 i = 0 41 a = 0 42 b = 0 43 j = 0 44 while i < len[l2] and i < len[l1]: 45 if l2[i] == str(l1[i]): 46 a = a + 1 47 else: 48 while j < len[l2]: 49 if str(l1[j]) != l2[i]: 50 b = b + 1 51 print(b) 52 j = j + 1 53 i = i + 1 54 print("Nombre de bien placés : " + " " + str(a) + "Nombre de mal placés : " + " " + str(b)
-----