From 8f47714867b1e3f13cf18628b5cd390402fa77d2 Mon Sep 17 00:00:00 2001 From: "philippot.m" <> Date: Wed, 16 Jul 2025 16:49:37 +0200 Subject: [PATCH] =?UTF-8?q?Je=20ne=20sais=20plus=20si=20c'est=20une=20ia?= =?UTF-8?q?=20mais=20r=C3=A9ussite=20=C3=A0=201000/1000=20ou=20100%=20cher?= =?UTF-8?q?che=20les=20mot=20de=20m=C3=AAme=20taille=20puis=20prend=20les?= =?UTF-8?q?=20lettres=20=C3=A0=20l'int=C3=A9rieur=20et=20plus=20rapide?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Pendue_que_j_ai_du_refaire_car_je_suis_con.py | 105 +++++++++++------- 1 file changed, 67 insertions(+), 38 deletions(-) diff --git a/Pendue_que_j_ai_du_refaire_car_je_suis_con.py b/Pendue_que_j_ai_du_refaire_car_je_suis_con.py index 841c63d..fec3483 100644 --- a/Pendue_que_j_ai_du_refaire_car_je_suis_con.py +++ b/Pendue_que_j_ai_du_refaire_car_je_suis_con.py @@ -8,6 +8,17 @@ lettre_à_supp=[] lst_mot=[] mot_aleatoire=42 difficulté=4 + +##################Mot###################### +def aleatoire(): + global mot_aleatoire + global lst_mot + lst_mot=["chou","Nouveaux","Pologne","vortex","Emmanuel","Nicolas","mot","pet","chat","chate","zebre","arbre","Donald","canard","bonjour","cote", + "Mexique","France","pomme","Solene","Alabama","anticonstitutionnelement","alcool","jumeau","jumelle","bourré", + "intergouvernementalisation","Creuse","Elise","abricot","beau","desert","Alaska","jolie","Henry","marche","Felx"] + mot_aleatoire=lst_mot[randint(0,len(lst_mot)-1)] + mot_choisie() + def mot_choisie(): global list_l_pendue global mot_tiret @@ -17,13 +28,14 @@ def mot_choisie(): global lst_mot list_mot_pendue=[] - #mot_pendue= mot.get() + mot_pendue= mot.get() if len(lst_mot)!=0: mot_pendue=mot_aleatoire list_l_pendue=[] mot_tiret=[] for lettre_pendue in mot_pendue: - list_l_pendue.append(lettre_pendue) + if lettre_pendue in list_l_pendue: + list_l_pendue.append(lettre_pendue) mot_tiret.append("-") list_mot_pendue.append(lettre_pendue) @@ -36,7 +48,7 @@ def mot_choisie(): choix_mot.config(state=DISABLED,show="*") mot_affiche=Label(pendue, text=mot_tiret).grid(row=3,column=1) bouton_mot.config(state=DISABLED) - +##################Jeux###################### def commencé(): pendue_jeux(lettre.get()) if sorted(list_l_pendue)==sorted(lettre_à_supp): @@ -56,10 +68,8 @@ def pendue_jeux(lettre_choisie): global mot_affiche global nb_raté global lettre_à_supp - global lettre_à_supp_av lettre_trouvé=[] #recherche si la lettre est dans le mot ou est passé - lettre_à_supp_av=lettre_à_supp[:] for i_lettre in range(len(list_l_pendue)): if lettre_choisie==list_l_pendue[i_lettre].lower() and not(lettre_choisie in lettre_à_supp): lettre_à_supp.append(list_l_pendue[i_lettre]) @@ -144,58 +154,77 @@ def choix_niveau(): maître.config(state=DISABLED) lettre_choix.config(state=NORMAL) bouton_l.config(state=NORMAL) - -def aleatoire(): - global mot_aleatoire - global lst_mot - lst_mot=["chou","Nouveaux","Pologne","vortex","Emmanuel","Nicolas","mot","pet","chat","chate","zebre","arbre","Donald","canard","bonjour","cote", - "Mexique","France","pomme","Solene","Alabama","anticonstitutionnelement","alcool","jumeau","jumelle","bourré", - "intergouvernementalisation","Creuse","Elise","abricot","beau","desert","Alaska","jolie","Henry","marche","Felx"] - mot_aleatoire=lst_mot[randint(0,len(lst_mot)-1)] - mot_choisie() - - - +####################Ia################ def ai_pendue(): global moment_mort global difficulté global lettre_à_supp - lst_lettre=["azertyuiopqsdfghjklmwxcvbn"]*2*25 + #initialisation i=0 nb_essaie=0 victoire=0 rate=0 mot_victoire=[] - while True: + lst_rate=[] + while nb_essaie!=-1 : + #réitialisation des variable nb_essaie=nb_essaie+1 - moment_mort=2 - difficulté=4 + moment_mort=8 + difficulté=2 i=0 aleatoire() lst_lettre_tire=[] + lettre_à_supp=[] + lst_mot_possible=[] + for i_mot in range(len(lst_mot)): + if len(lst_mot[i_mot]) == len(list_l_pendue): + lst_mot_possible.append(lst_mot[i_mot]) + while not(sorted(list_l_pendue)==sorted(lettre_à_supp) or moment_mort==0) : - lettre_choisie=lst_lettre[i][randint(0,len(lst_lettre[i])-1)] + lettre_maj=["a",0] + lst_lettre=[{"lettre":"a","val":0},{"lettre":"e","val":0},{"lettre":"i","val":0},{"lettre":"o","val":0},{"lettre":"u","val":0},{"lettre":"y","val":0},{"lettre":"z","val":0},{"lettre":"r","val":0},{"lettre":"t","val":0},{"lettre":"n","val":0},{"lettre":"p","val":0},{"lettre":"q","val":0},{"lettre":"s","val":0},{"lettre":"d","val":0},{"lettre":"f","val":0},{"lettre":"g","val":0},{"lettre":"h","val":0},{"lettre":"j","val":0},{"lettre":"k","val":0},{"lettre":"l","val":0},{"lettre":"m","val":0},{"lettre":"w","val":0},{"lettre":"x","val":0},{"lettre":"c","val":0},{"lettre":"v","val":0},{"lettre":"b","val":0}] + #print(lst_mot_possible,mot_aleatoire) + for i_mot in range(0,len(lst_mot_possible)): + for i_lettre in range(0,len(lst_mot_possible[i_mot])): + for i_lettre_test in range(25): + #print(lst_mot_possible[i_mot][i_lettre],lst_lettre[i_lettre_test]["lettre"],lst_lettre_tire) + if lst_mot_possible[i_mot][i_lettre].lower()==lst_lettre[i_lettre_test]["lettre"] and not(lst_mot_possible[i_mot][i_lettre].lower() in lst_lettre_tire): + lst_lettre[i_lettre_test]["val"]=lst_lettre[i_lettre_test]["val"]+1 + if lettre_maj[1]