Vidéo d’explication
Le célèbre jeu du Mastermind est assez facile à programmer en Python comme nous allons le voir.
Lancez le jeu en tapant mm()
, par défaut il y aura 6 couleurs différentes (chiffres de 1 à 6) et la combinaison sera de taille 4 avec possibilité de répétitions (par exemple “2446”).
Il s’affiche Coup 1 :
, tapez alors votre proposition, par exemple 1234
.
La machine vous dit alors combien de chiffres sont bien placés et combien sont mal placés.
Si vous voulez un niveau plus difficile avec une taille 4, tapez par exemple mm(4,8)
pour qu’il y ait 8 couleurs, ou alors tapez mm(5)
pour que la taille soit 5 (avec par défaut 6 couleurs) ou encore mm(6,9)
pour une taille 6 avec 9 couleurs (bon courage !)
str
pour avoir un code secret du type ["1","4","4","5"]
, la raison est que lorsque le joueur tapera sa proposition ce sera une chaine de caractères ainsi ce sera plus simple pour les comparaisons, de plus nous remplacerons plus bas certains éléments par des "#" ou des "*" donc autant travailler avec des caractères.from random import * def mm(niv = 4, coul = 6): c = 1 secret = [str(randint(1,coul)) for i in range(niv)] while True: code = list(secret) j = list(input("Coup {} : ".format(c))) if len(j) == 0: return "PERDU ! " + "".join(secret) c += 1 bien, mal = 0, 0 for i,v in enumerate(j): if v == code[i]: bien += 1 j[i] = "#" code[i] = "*" if bien == 4: return "GAGNE !" for i,v in enumerate(j): if v in code: mal += 1 code[code.index(v)] = "*" print("Bien: {}, Mal: {}".format(bien,mal))