Projet mastermind

Signaler
Messages postés
3
Date d'inscription
vendredi 7 novembre 2014
Statut
Membre
Dernière intervention
22 février 2015
-
lespinx
Messages postés
97
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
7 décembre 2018
-
cher internaute

si je suis sur cette forum aujourd'hui c'est pour vous demander de laide .;

voila jai un projet a réalisé ; le projet consiste à programmer le jeu mastermind sur python et à faire un interface graphique soit pygame ou tkinter ( 1 interface graphique )
voila pour la représenter du jeux j'ai peu le programmer sur python mais le problème est que j'arrive pas à la réaliser sur un interface graphique
Pouviez vous m'aider s'il vous plais

merci du temps que vous mettriez pour me répondre

cordialement .

3 réponses

Messages postés
97
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
7 décembre 2018
47
Bonjour,

Vous trouverez ci-joint quelques propositions de simplification de votre code.

# -*- coding: ISO-8859-15 -*-

from random import shuffle

#Transformation d'une chaine en liste (def to_list(s))
chaine = "123456"
lst_chaine = list(chaine)
print("chaine = ", chaine, "        liste = ", lst_chaine)

#liste des couleurs initiales
lst_init_couleurs = ["bleu", "rouge", "vert", "jaune"]

#Copie d'une liste dans une autre liste (def copie(liste):)
lst_melange_couleurs = list(lst_init_couleurs)

#Mélange aléatoire de la liste (def cache(n,k))
shuffle(lst_melange_couleurs)

print(lst_init_couleurs, "couleurs initiales")
print(lst_melange_couleurs, "couleurs mélangées")

#Controle couleur bien ou mal placée
i = 0
for element in lst_init_couleurs:
    if lst_melange_couleurs[i] == element:
        print("OK couleur", element,  "en position ", i)
    else:
        print("KO couleur en position ", i)

    i += 1


faire un interface graphique soit pygame ou tkinter
Tkinter est un interface généraliste et Pygame est plus spécifique et est plutôt orienté vers les interface de jeux.

Si vous avez l'intention de développer plutôt des jeux lancez vous dans Pygame sinon choisissez Tkinter.

Cordialement
--
Messages postés
14733
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
10 février 2020
90
Hello,

Certains d'entre nous sont sûrement capables de t'aiguiller. Par contre, très peu de personnes peuvent voir le code que tu ne montres pas ;)
Messages postés
3
Date d'inscription
vendredi 7 novembre 2014
Statut
Membre
Dernière intervention
22 février 2015
2
voila le code

from random import*
 
def cache(n,k):             # cache k couleurs dans n cases
    s=[]
    i=0
    while i<n:
        s.append(randrange(1,k+1))
        i=i+1
    return s
 
 
def to_list(s):             # transforme une chaine en une liste
    liste=[]
    i=0
    while i<len(s):
        liste.append(int(s[i]))
        i=i+1
    return liste
 
     
def rouge(proposition,solution):   # indique le nombre de couleurs bien placé.
    bien=0  # nombre de rouge
    i=0
    while i < cases:
        if proposition[i]==solution[i]:
            bien=bien+1
            proposition[i]='y'   # pour éviter des compter plusieurs fois une meme couleur,
            solution[i]='x'      # on remplace ces chiffres par des lettres
        i=i+1
    return bien
 
 
def blancs(proposition,solution):  # indique le nombre de couleurs mal placé.
    i=0
    mal=0   # nombre de blancs
    while i<cases:
        j=0
        while j<cases:
            if proposition[i]==solution[j]:
                mal=mal+1
                proposition[i]='y'    # idem que pour la fonction "rouge"
                solution[j]='x'
            j=j+1
        i=i+1
    return mal
 
         
def copie(liste):           # copie "liste" dans "copy"
    copy=[]
    i=0
    while i<len(liste):
        copy.append(liste[i])
        i=i+1
    return copy
def erreur () :
    while true :
        # begin
        try :
            a = returnin (input("entrer un nombre réel")
            except ValueError :
                           print ( "Erreur de saisie, il faut un entier. Recommencez")
        #end
                       
# Programme principal
cases=4
couleurs=6
Oange = 1
bleu = 2
vert = 3
jaune = 4
Violt = 5
Fushia = 6
essai_max=10
essai=0
sol = cache(cases,couleurs)
nb_biens=0
nb_mals=0
copie_prop = []
copie_sol = []
print("vous avez",essai_max,"essais")
print()
while nb_biens<cases and essai<essai_max:
    essai=essai+1
    print("essai",essai)
    prop=to_list(input('Entrez votre proposition: '))
    copie_prop=copie(prop)
    copie_sol=copie(sol)
    nb_biens=rouge(copie_prop, copie_sol)
    print(nb_biens,'rouge(s)')
    nb_mals=blancs(copie_prop, copie_sol)
    print(nb_mals, 'blanc(s)')
    print()
if nb_biens==cases:
    print("Bravo !")
else:
    print("La réponse était",sol)


Edité pour ajouter les balises de code : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code