Jeu python

LUKA -  
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   -
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
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
LUKA
 
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > LUKA
 
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 420 Date d'inscription   Statut Membre Dernière intervention   347
 
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   Statut Membre Dernière intervention   168
 
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