Résolu Python. Jeu culture générale

  • Auteur de la discussion iska59
  • Date de début

iska59

Nouveau membre
Bonjour, j ai 1 problème sur python. Je dois créer un jeu de 5 questions par thèmes et il y'a 5 thèmes. Bon ça c est ok. J ai un premier probleme: par exemple si l utilisateur tape 4, il a le thème 4 etc... le souci est que si l utilisateur tape 4, je n arrive pas a afficher les questions du thème 4. De plus l utilisateur à 5essais par question: 1 essai vaut 4 pts, 2essais vaut 3pts, 3essais vaut 2points,4essais vaut 1points, 5essai vaut 0pt. Je n arrive pas a afficher le nombre de points si par exemple, l utilisateur trouve ka réponse en 3essais. De plus, j aimerai savoir comment totaliser les points la fin du jeu
Merci de me répondre au plus vite, c est très urgent
 

AccroPC2

Fou du PC
Staff
Bonjour,

On es pas super fan pour donner des réponses toutes faites, donc si tu nous donnes ce que tu as fait, on peut regarder et t'aider à le debugguer, ou bien indique nous précisément ou tu bloques et on te dira comment faire.

Bye
 

iska59

Nouveau membre


 

iska59

Nouveau membre
Non.finalement j ai réussi à trouver. La seule question est que comment je.peut faire pour totaliser les points obtenues.sinon.mon programme marche.
Merci
 

AccroPC2

Fou du PC
Staff
Meilleure réponse
Re,

Ce n'est pourtant pas la partie la plus compliquée, disons que si tu faisais qqc comme cela :

Python:
#!/bin/env python

import sys

#Le theme est la cle du dictionnaire, les questions sous forme d'un tab question/reponse 
#Theme T1 / T2
#Question "Q1" donc la bonne réponse est 1
#Question "Q2" donc la bonne réponse est 2 

questions={
   'T1' : [ ['Q1',1],['Q2',2],['Q3',3] ],
   'T2' : [ ['Q1',1],['Q2',3],['Q3',3] ]
}

def points( essai ):
   if essai > 4 :
      return 0
   else :
      return 5 - essai



# Main

if __name__ == '__main__' :
   score_joueur=0
   print('Choisissez un theme:')
   for theme in questions :
      print( theme )
   theme=raw_input('Entrez votre choix:')
   for question in questions[theme] :
      print question[0]
      essai=0
      reponse=0
      while str(reponse) != str(question[1]) :
         reponse=raw_input('votre reponse ? :')
         essai+=1
         if essai == 5 :
            break
      score_joueur+=points(essai)
   print("Score final : "+str(score_joueur) )
 

iska59

Nouveau membre

 

iska59

Nouveau membre
Cool! Je vous remercie infiniment d avoir pris de votre temps pour m aider. Heureusement qu' il y'a des personnes comme vous prêt à aider les autres.
Encore Merci!passer une bonne soirée
 

AccroPC2

Fou du PC
Staff
Re,

Si cela solutionne ton problème, peux-tu cliquer sur Selectionner comme meilleure solution, comme cela le topic passe en résolu.

Bye
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 126
Messages
6 717 816
Membres
1 586 365
Dernier membre
matiOs1
Partager cette page
Haut