Projet mastermind

Messages postés
3
Date d'inscription
vendredi 7 novembre 2014
Statut
Membre
Dernière intervention
22 février 2015
- - Dernière réponse : lespinx
Messages postés
97
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
7 décembre 2018
- 19 nov. 2014 à 17:31
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 .
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
97
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
7 décembre 2018
43
7
Merci
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
--

Dire « Merci » 7

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 202 internautes nous ont dit merci ce mois-ci

Commenter la réponse de lespinx
Messages postés
14672
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
29 novembre 2019
90
1
Merci
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 ;)
Commenter la réponse de BunoCS
Messages postés
3
Date d'inscription
vendredi 7 novembre 2014
Statut
Membre
Dernière intervention
22 février 2015
2
1
Merci
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
Commenter la réponse de pharelle8