====== Différences ======
Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.
|
cours:activite1:python_jeu [2013/11/07 13:55] r.doiteau |
cours:activite1:python_jeu [2019/05/11 14:35] (Version actuelle) |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ==== Jeu de hasard ==== | + | ===== Jeu de hasard ===== |
| - | {{:cours:activite1:python.zip|}} | + | ==== Installation ==== |
| + | |||
| + | * Télélécharger python 3.3.2 : http://www.python.org/download/ | ||
| + | |||
| + | * Dézipper le fichier python.zip {{:cours:activite1:jeu_de_hasard_doiteau_romain.tar|}} | ||
| + | |||
| + | * Placer les trois fichiers dans un même répertoire | ||
| + | |||
| + | * Double cliquer sur le fichier module | ||
| + | |||
| + | * Pour une aide consulter le fichier help du jeu en tapant 5 | ||
| + | |||
| + | ==== Utilisation ==== | ||
| + | |||
| + | |||
| + | Pour commencer à jouer taper 1 | ||
| + | |||
| + | 1-----JOUER------------------ | ||
| + | |||
| + | Renseigner un nombre entier compris entre 0 et 9 | ||
| + | |||
| + | Si le nombre entré est égale au nombre choisi par | ||
| + | |||
| + | l'ordinateur, vous avez gagné, sinon vous avez perdu | ||
| + | |||
| + | Si vous avez perdu , il vous est proposé de rejouer | ||
| + | |||
| + | Taper O ou o pour rejouer et N ou n pour revenir au menu | ||
| + | |||
| + | 2-----SCORES----------------- | ||
| + | |||
| + | Affiche le palmarès des scores | ||
| + | |||
| + | 3-----CHANGER DE JOUEUR------ | ||
| + | |||
| + | Permet de changer de joueur en cours de partie | ||
| + | |||
| + | 4-----QUITTER---------------- | ||
| + | |||
| + | Quitte le jeu | ||
| + | |||
| + | |||
| + | ---------------------------------------- | ||
| + | |||
| + | ==== Code source ==== | ||
| + | |||
| === Module ==== | === Module ==== | ||
| <code=python> | <code=python> | ||
| - | ############################################# | + | ################################################################################ |
| - | # Programme Python type # | + | # Programme Python type # |
| - | # auteur : R.Doiteau # | + | # auteur : R.Doiteau # |
| - | ############################################# | + | ################################################################################ |
| - | #Consiste à deviner un entier tiré au # | + | #http://doiteauromain.amon-internet.com/doku.php?id=cours:activite1:python_jeu # |
| - | # hasard depuis une liste d'entiers de 0 à9 # | + | ################################################################################ |
| - | #Les résultats sont consignées dans # | + | #Consiste à deviner un entier tiré au # |
| - | # un fichier sous la forme : palmares.txt # | + | # hasard depuis une liste d'entiers de 0 à9 # |
| - | ############################################# | + | #Les résultats sont consignées dans # |
| + | # un fichier sous la forme : palmares.txt # | ||
| + | ################################################################################ | ||
| + | |||
| # Importation de fonctions externes : | # Importation de fonctions externes : | ||
| Ligne 24: | Ligne 73: | ||
| === Programme === | === Programme === | ||
| <code=python> | <code=python> | ||
| - | def initialisation(): | + | ####################################################################### |
| - | #variable | + | ###################PROGRAMME#PRINCIPALE################################ |
| - | + | ####################################################################### | |
| - | nom_joueur="a" #initilisation d'un joueur au hasard pour commencé le programme | + | |
| - | #programme = chargement de la consigne | + | |
| - | print(40*"-") | + | |
| - | print (17*"-","MENU",17*"-") | + | |
| - | print(40*"-") | + | |
| - | print("Ce jeu consiste a tiré au sort un entier entre 0 et 9 ") | + | |
| - | print(40*"-") | + | |
| - | return changer_joueur(nom_joueur) | + | |
| def menu (nom_joueur): | def menu (nom_joueur): | ||
| Ligne 42: | Ligne 83: | ||
| Choix_3=print("3-----CHANGER DE JOUEUR------") | Choix_3=print("3-----CHANGER DE JOUEUR------") | ||
| Choix_4=print("4-----QUITTER----------------") | Choix_4=print("4-----QUITTER----------------") | ||
| + | Choix_5=print("5-----HELP-------------------") | ||
| #programme = initialisation du menu | #programme = initialisation du menu | ||
| Ligne 49: | Ligne 91: | ||
| print(40*"-") | print(40*"-") | ||
| - | while Choix !="1" and Choix !="2" and Choix !="3" and Choix !="4": | + | while Choix !="1" and Choix !="2" and Choix !="3" and Choix !="4" and Choix !="5": |
| Choix = input("Veuiller choisir : ") | Choix = input("Veuiller choisir : ") | ||
| if Choix == "1": | if Choix == "1": | ||
| Ligne 57: | Ligne 99: | ||
| elif Choix == "3": | elif Choix == "3": | ||
| changer_joueur (nom_joueur) | changer_joueur (nom_joueur) | ||
| - | |||
| elif Choix == "4": | elif Choix == "4": | ||
| - | print("Au revoir les amis") | + | quitter() |
| + | elif Choix == "5": | ||
| + | help(nom_joueur) | ||
| + | ########################################################################################################### | ||
| + | ########################################################################################################### | ||
| + | |||
| + | def help (nom_joueur): | ||
| + | fic_help=open("readme.txt","r") | ||
| + | dico_help=fic_help.read() | ||
| + | |||
| + | print (dico_help) | ||
| + | retour_menu=input("Retour menu /1") | ||
| + | |||
| + | if retour_menu =="1": | ||
| + | menu(nom_joueur) | ||
| + | while retour_menu !="1": | ||
| + | retour_menu=(input("veuillez choisir ? ")) | ||
| + | else: | ||
| + | menu(nom_joueur) | ||
| + | |||
| + | def initialisation(): | ||
| + | ####### ENTREE = sert à initialisé un nom de joueur pour charger le menu, sans énoncé a chaque fois la consigne##### | ||
| + | #variable | ||
| + | nom_joueur="" | ||
| + | #nom_joueur="a" #initilisation d'un joueur au hasard pour commencé le programme | ||
| + | #programme = chargement de la consigne | ||
| + | print(40*"-") | ||
| + | print (17*"-","MENU",17*"-") | ||
| + | print(40*"-") | ||
| + | print("Ce jeu consiste a tiré au sort un entier entre 0 et 9 ") | ||
| + | print(40*"-") | ||
| + | return changer_joueur(nom_joueur) | ||
| + | |||
| + | def quitter (): | ||
| + | |||
| + | print("Au revoir les amis") | ||
| + | exit() | ||
| def changer_joueur(nom_joueur): | def changer_joueur(nom_joueur): | ||
| #variable | #variable | ||
| nom_joueur=input("Veuillez entrer votre nom :") | nom_joueur=input("Veuillez entrer votre nom :") | ||
| + | comptage=len(nom_joueur) #compte le nombre de carcartére du nom_joueur | ||
| + | i=0 #variable utilisé pour le nombre de passe du nom | ||
| + | # si le nombre de caractére du nom joueur et nul et > à 10 il renvoie une entrée nom | ||
| + | while comptage == 0 or comptage>10: | ||
| + | i=i+1 | ||
| + | if i<4: #arrête le progarmme si la passe est < à 4 | ||
| + | nom_joueur=input("Veuillez entrez votre nom svp : ") | ||
| + | else: | ||
| + | print("au revoir") | ||
| + | exit() | ||
| + | |||
| #programme | #programme | ||
| print("Bonjour",nom_joueur) | print("Bonjour",nom_joueur) | ||
| Ligne 78: | Ligne 166: | ||
| #séparation des éléments de la liste et tri dans la liste vide | #séparation des éléments de la liste et tri dans la liste vide | ||
| for ligne in liste_palmares: | for ligne in liste_palmares: | ||
| - | liste_lu=ligne.split(":") | + | liste_lu=ligne.split(":") #coupe le palmares par les : |
| - | liste_vide.append(int(liste_lu[1])) | + | liste_vide.append(int(liste_lu[1])) #implémante une liste |
| - | liste_vide.sort(reverse=True) | + | liste_vide.sort(reverse=True) #tri la liste en ordfe inverse |
| - | #effectueun tri par orde croissant | + | #effectue un tri par orde décroissant |
| for element in liste_vide: | for element in liste_vide: | ||
| if record > 0: | if record > 0: | ||
| podium=podium+1 | podium=podium+1 | ||
| - | if liste_vide[record] != liste_vide[record-1]: | + | if liste_vide[record] != liste_vide[record-1]: |
| for ligne in liste_palmares: | for ligne in liste_palmares: | ||
| - | liste_lu=ligne.split(":") | + | liste_lu=ligne.split(":") |
| if str(element) == liste_lu[1]: | if str(element) == liste_lu[1]: | ||
| Ligne 122: | Ligne 210: | ||
| rejouer = "O" | rejouer = "O" | ||
| pnts=0 # implémente le compteur de points à zéro | pnts=0 # implémente le compteur de points à zéro | ||
| - | i=0 | + | i=0 # variable pour multiplier le nombre des points |
| pnts_gagne=0 # implémente les compteur point gagné à zéro | pnts_gagne=0 # implémente les compteur point gagné à zéro | ||
| Ligne 130: | Ligne 218: | ||
| if nbre_joueur == nbre_gagnant: | if nbre_joueur == nbre_gagnant: | ||
| - | pnts=pnts+10 | + | pnts=pnts+10 # incrémente le nombre de points |
| - | i=i+1 | + | i=i+1 # mutliplie le nombre de points |
| pnts=i*pnts | pnts=i*pnts | ||
| print("GAGNE votre score est de",pnts) | print("GAGNE votre score est de",pnts) | ||
| pnts_gagne=pnts | pnts_gagne=pnts | ||
| pnts=0 | pnts=0 | ||
| - | nbre_gagnant=random.randint(0,9) | + | nbre_gagnant=random.randint(0,9) #réeffectue le hasard pour rejouer |
| - | print(nbre_gagnant) | + | print("Le nombre est",nbre_gagnant,"mais chut !!!!!!") |
| else : | else : | ||
| Ligne 145: | Ligne 233: | ||
| rejouer = input("Rejouer O/N ?") | rejouer = input("Rejouer O/N ?") | ||
| nbre_gagnant=random.randint(0,9) #réeffectue le hasard pour rejouer | nbre_gagnant=random.randint(0,9) #réeffectue le hasard pour rejouer | ||
| - | print(nbre_gagnant) | + | print("Le nombre est",nbre_gagnant,"mais chut !!!!!!") |
| while rejouer !="O" and rejouer != "N": | while rejouer !="O" and rejouer != "N": | ||
| Ligne 151: | Ligne 239: | ||
| else: | else: | ||
| - | rejouer !="N" | + | #rejouer !="N" |
| pnts_gagne=str(pnts_gagne) | pnts_gagne=str(pnts_gagne) | ||
| palmares=open("palmares.txt","a") | palmares=open("palmares.txt","a") | ||
| Ligne 195: | Ligne 283: | ||
| nbre=int(nbre_gagnant) | nbre=int(nbre_gagnant) | ||
| print(nbre) | print(nbre) | ||
| + | |||
| </code> | </code> | ||