Afficher le score

Fermé
jeanmartre Messages postés 9 Date d'inscription samedi 18 novembre 2017 Statut Membre Dernière intervention 23 février 2018 - 20 déc. 2017 à 12:20
jeanmartre Messages postés 9 Date d'inscription samedi 18 novembre 2017 Statut Membre Dernière intervention 23 février 2018 - 6 janv. 2018 à 12:58
Bonjour,
j'ai écrit un petit jeu pour entraîner sa mémoire (avec python 3.6) :

import os
os.system("color A")

import random
nombre1 = random.randint(1,1000)
nombre2 = random.randint(1,1000)
nombre3 = random.randint(1,1000)
nombre4 = random.randint(1,1000)
nombre5 = random.randint(1,1000)
print ("Premier nombre :", nombre1)
input()
print ("Deuxieme nombre :", nombre2)
input()
print ("Troisieme nombre :", nombre3)
input()
print ("Quatrieme nombre :", nombre4)
input()
print ("Cinquieme nombre :", nombre5)
input()
import os
os.system("cls")

a = "C'est pas le bon nombre. C\'etait :"
b = "Bravo !"

nombre21 = input("Entrez votre premier nombre : ")
nombre31 = int(nombre21)
if (nombre31>nombre1):
print (a, nombre1)
print ("")
if (nombre31<nombre1):
print (a, nombre1)
print ("")
else:
print(b)
print ("")

nombre24 = input("Entrez votre deuxieme nombre : ")
nombre34 = int(nombre24)
if (nombre34>nombre2):
print (a, nombre2)
print ("")
if (nombre34<nombre2):
print (a, nombre2)
print ("")
else:
print(b)
print ("")

nombre25 = input("Entrez votre troisieme nombre : ")
nombre35 = int(nombre25)
if (nombre35>nombre3):
print (a, nombre3)
print ("")
if (nombre35<nombre3):
print (a, nombre3)
print ("")
else:
print(b)
print ("")

nombre26 = input("Entrez votre quatrieme nombre : ")
nombre36 = int(nombre26)
if (nombre36>nombre4):
print (a, nombre4)
print ("")
if (nombre36<nombre4):
print (a, nombre4)
print ("")
else:
print(b)
print ("")

nombre27 = input("Entrez votre cinquieme nombre : ")
nombre37 = int(nombre27)
if (nombre37>nombre5):
print (a, nombre5)
if (nombre37<nombre5):
print (a, nombre5)
else:
print(b)

input()

mais je n'arrive pas à afficher les scores à la fin, comme ça par exemple :
Nombre de réponses justes : 1/5
Nombre de réponses fausses : 4/5

une idée pour m'aider ?
merci d'avance

2 réponses

quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 344
22 déc. 2017 à 18:36
Bonjour,
Pour commencer, je te conseille d'utiliser des boucles parce que tu as vraiment du courage d'avoir écrit 5 fois chaque étape de ton programme.
Et aussi, tu fais par exemple :
if (nombre31>nombre1):
	print (a, nombre1)
	print ("")
if (nombre31<nombre1):
	print (a, nombre1)
	print ("")
else:
	print(b)
	print ("")

Ca serait plus propre d'utiliser le différent (qui s'écrit != en python) à la place de > puis la même chose avec <.

Pour répondre à ta question, tu peux créer une variable score au début qui contient 0 et à chaque fois que le nombre entré est valide (dans le else), tu augmente la valeur du score de 1 en faisant :
score+=1

Et tu pourra afficher la variable à la fin.
0
jeanmartre Messages postés 9 Date d'inscription samedi 18 novembre 2017 Statut Membre Dernière intervention 23 février 2018
6 janv. 2018 à 12:58
Merci pour la réponse et les conseils, ça m'a beaucoup aidé.
0