Jeu python

Fermé
LUKA - Modifié le 11 oct. 2020 à 22:03
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 12 oct. 2020 à 11:32
Bonjour,

Je joue a un jeu, qui consiste a deviner un nombre que l'ordinateur choisi et qu'il nous renvoie le nombre de valeurs a la bonne ou mauvaise place, et il doit nous dire on en combien de coup on a réussi.

J'ai tenté de le faire moi même mais je n'y arrive pas peut-on m'expliquer mes erreurs merci par avance

R = [1,2,5,4] 
 
A = [1,2,2,4]
#A = [2,5,2,2]



VBP = 0
VMP = 0
i=int(input("dis moi un chiffre entre 0000et 7000"))
compteur=0 
i=-1
for i in range(0, len(R)):
    if R[i]==A[i]:
        print("il y a",VBP,"de valeur bien placée")
        VBP += 1
        if R[i] in A[:i]+A[i+1:]:
            print("Il y a",VMB," de valeur mal placée")   
            VMP += 1 
print("Tu as reussi au bout de",compteur,"coups")
A voir également:

3 réponses

yg_be Messages postés 23323 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 14 novembre 2024 Ambassadeur 1 551
11 oct. 2020 à 21:50
bonjour,
1) "je n'y arrive pas": peux-tu décrire ce qui se passe?
2) merci d'utiliser les balises de code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
Je dois deviner un nombre que l'ordi choisit qui se situe entre 0000 et 7000 en un minimum d'essai.L'ordinateur doit renvoyer quelles valeurs sont a la bonne ou mauvaise place.Le problème est que je suis débutant et que je bloque la dessus.
0
yg_be Messages postés 23323 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 14 novembre 2024 1 551 > LUKA
12 oct. 2020 à 06:58
1) si tu ne veux pas rester débutant, je suggère que tu fasses d'abord des exercices plus simples. par exemple, deviner un nombre, et l'ordinateur te répond si le nombre à trouver est plus petit ou plus grand.
2) ton programme fonctionne bien, as-tu un message d'erreur?
3) avant d'écrire le programme, réfléchi à comment obtenir le résultat. comment ferais-tu avec une feuille et un crayon, pour indiquer combien de chiffres sont bien placés et combien mal placés?
0
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 346
11 oct. 2020 à 22:02
Bonjour,
Dans vos prochains messages, pensez à utiliser les balises de code afin de conserver les indentations qui sont primordiales en python. https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

À quoi correspondent les listes R et A ? J'immagine que R contient la solution à trouver, mais je ne comprend pas à quoi sert A.

Quand vous, faites
for i in range(0, len(R)):
vous écrasez la valeur de i qui a été saisie juste avant. Il y a donc un problème à ce niveau là.
Choisissez à quoi sert la variable i, et donnez des noms différents aux variables qui servent à des choses différentes.

Et je vous conseille de faire les choses pas à pas. Oubliez le compteur pour commencer, et rajoutez le seulement quand le reste fonctionnera.
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
12 oct. 2020 à 11:32
Bonjour,

Effectivement, tu saisi un nombre et tu le mets dans la variable i :

i=int(input("dis moi un chiffre entre 0 et 7000"))


et tout de suite après tu écrase i et le mettant égal à -1
i=-1

donc le nombre saisi est passé à la trappe !
0