Bonjour à tous,
Dans le cadre d'un projet, mon binôme et moi-même développons un jeu de type "Mastermind". Nous ne comprenons pas l'explication de notre professeur au sujet de la vérification d'une combinaison de couleur.
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 String[] combinaison_a_trouver = new string[] { splitted_joueur_2[0], splitted_joueur_2[1], splitted_joueur_2[2], splitted_joueur_2[3] }; String[] combinaison_jouee = new string[] { splitted_joueur_1_jeu[0], splitted_joueur_1_jeu[1], splitted_joueur_1_jeu[2], splitted_joueur_1_jeu[3] }; int nb_coul = 0, i = 0, j = 0, nb_bien_posee = 0; foreach (string splitted_joueur in combinaison_jouee) { foreach (string splitted_joueur_jeu in combinaison_a_trouver) { if (splitted_joueur == splitted_joueur_jeu) { nb_coul++; if (i == j) nb_bien_posee++; } j++; } j = 0; i++; } Console.WriteLine("nombre de couleur = " + nb_coul + " nombre de position = " + nb_bien_posee);
Chaque splitted_joueur_1_jeu[x] correspond à une couleur. J'ai cherché de la doc sur les boucles foreach en c#, mais je ne l'ai pas bien comprise.
Admettons la combinaison a trouver : rouge, rouge, vert, bleu
la combinaison essayée : rouge, rouge, vert, jaune
dans ce cas j'obtiens 3 couleurs bien posées, et nb_coul=5
Je ne comprends pas vraiment à quoi correspond ce 5 ? Quelqu'un pourrait-il m'éclairer ?
J'en profite également pour vous demander si vous avez des suggestions à propos de l'algorithme de vérification (à part toute une série de tests un peu barbare à laquelle j'ai déjà pensé ^^)
Merci d'avance de votre aide,
Cécile
Partager