====== Différences ======

Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue comparative

cours:activite1:python_jeu [2013/11/07 13:46]
r.doiteau créée
cours:activite1:python_jeu [2019/05/11 14:35] (Version actuelle)
Ligne 1: Ligne 1:
-==== Jeu de hasard ====+===== Jeu de hasard ====
 +==== 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 20: Ligne 70:
 initialisation() initialisation()
 </​code>​ </​code>​
 +
 +=== Programme ===
 +<​code=python>​
 +#######################################################################​
 +###################​PROGRAMME#​PRINCIPALE################################​
 +#######################################################################​
 +
 +def menu (nom_joueur):​
 +#variables
 +    Choix_1=print("​1-----JOUER------------------"​)
 +    Choix_2=print("​2-----SCORES-----------------"​)
 +    Choix_3=print("​3-----CHANGER DE JOUEUR------"​)
 +    Choix_4=print("​4-----QUITTER----------------"​)
 +    Choix_5=print("​5-----HELP-------------------"​)
 +
 +#programme = initialisation du menu
 +    nbre_gagnant=0
 +    print(40*"​-"​)
 +    Choix=str(input("​Que voulez vous faire ? 1/2/3/4 "))
 +    print(40*"​-"​)
 +
 +    while Choix !="​1"​ and Choix !="​2"​ and Choix !="​3"​ and Choix !="​4"​ and Choix !="​5":​
 +        Choix = input("​Veuiller choisir :  ")
 +    if Choix == "​1":​
 +        jouer(nom_joueur)
 +    elif Choix == "​2":​
 +        scores(nom_joueur)
 +    elif Choix == "​3":​
 +        changer_joueur (nom_joueur)
 +    elif Choix == "​4":​
 +        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):​
 +#variable
 +    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
 +    print("​Bonjour",​nom_joueur)
 +    menu(nom_joueur)
 +
 +def scores (nom_joueur):​
 +#variables
 +    liste_vide = []                       #​création liste vide
 +    palmares=open("​palmares.txt","​r"​) ​    #​ouverture du fichier palmares
 +    liste_palmares=palmares.readlines() ​  #​lecture palmares dans une liste
 +    record=0 ​                             #variable utilisé pour implémanter les records
 +    podium=1
 +#programme
 +    #​séparation des éléments de la liste et tri dans la liste vide
 +    for ligne in liste_palmares:​
 +        liste_lu=ligne.split(":"​) ​            #​coupe le palmares par les :
 +        liste_vide.append(int(liste_lu[1])) ​  #​implémante une liste
 +        liste_vide.sort(reverse=True) ​        #tri la liste en ordfe inverse
 +
 +
 +    #effectue un tri par orde décroissant
 +    for element in liste_vide:
 +        if record > 0:
 +            podium=podium+1
 +            if liste_vide[record] != liste_vide[record-1]: ​
 +                for ligne in liste_palmares:​
 +                    liste_lu=ligne.split(":"​) ​      
 +
 +                    if str(element) == liste_lu[1]:​
 +
 +                       ​print(" ​        ",​podium,"​--",​liste_lu[0],​ "​with",​element,"​points"​)
 +        elif record == 0:
 +            for ligne in liste_palmares:​
 +                liste_lu=ligne.split(":"​)
 +                if str(element) == liste_lu[1]:​
 +                    print("​The winner is",​liste_lu[0],"​with",​element,"​points"​)
 +        record +=1
 +    print(40*"​-"​)
 +    palmares.close()
 +
 +    retour_menu=input("​Retour menu /1")
 +
 +#gére l'​expection du menu
 +    if retour_menu =="​1":​
 +        menu(nom_joueur)
 +    while retour_menu !="​1":​
 +        retour_menu=(input("​veuillez choisir ? "))
 +    else:
 +        menu(nom_joueur)
 +
 +def jouer(nom_joueur):​
 +#fonction externe
 +    import random
 +#variables
 +
 +    nbre_gagnant=random.randint(0,​9) ​  #​effectue le hasard
 +    print (nbre_gagnant)
 +    rejouer = "​O"​
 +    pnts=0 ​                            # implémente le compteur de points à zéro
 +    i=0                                # variable pour multiplier le nombre des points
 +    pnts_gagne=0 ​                      # implémente les compteur point gagné à zéro
 +
 +#programme principal
 +    while rejouer == "​O"​ or rejouer =="​o":​
 +        nbre_joueur = nbre_entre()
 +
 +        if nbre_joueur == nbre_gagnant:​
 +            pnts=pnts+10 ​                       # incrémente le nombre de points
 +            i=i+1                               # mutliplie le nombre de points
 +            pnts=i*pnts
 +            print("​GAGNE votre score est de",​pnts)
 +            pnts_gagne=pnts
 +            pnts=0
 +            nbre_gagnant=random.randint(0,​9) ​   #​réeffectue le hasard pour rejouer
 +            print("​Le nombre est",​nbre_gagnant,"​mais chut !!!!!!"​)
 +
 +        else :
 +            nbre_joueur != nbre_gagnant
 +            print("​RATE"​)
 +            print("​Le nombre à trouver était",​nbre_gagnant)
 +            rejouer = input("​Rejouer O/N ?")
 +            nbre_gagnant=random.randint(0,​9) ​   #​réeffectue le hasard pour rejouer
 +            print("​Le nombre est",​nbre_gagnant,"​mais chut !!!!!!"​)
 +
 +            while rejouer !="​O"​ and rejouer != "​N":​
 +                rejouer = input("​Veuiller choisir O/N : ")
 +
 +    else:
 +        #rejouer !="​N"​
 +        pnts_gagne=str(pnts_gagne)
 +        palmares=open("​palmares.txt","​a"​)
 +        palmares.write(nom_joueur+":"​+pnts_gagne+":"​+"​\n"​)
 +        palmares.close()
 +        palmares=open("​palmares.txt","​r"​)
 +        liste_1=palmares.readlines()
 +        somme=0
 +        for ligne in liste_1:
 +            liste_2=ligne.split(":"​)
 +            if nom_joueur == liste_2[0]:
 +                liste_2[1]=int(liste_2[1])
 +                somme=somme+liste_2[1]
 +        return menu(nom_joueur)
 +
 +
 +def nbre_entre():​
 +#variable
 +
 +    rep=0 #variable gérer pour l'​exception
 +
 +    while rep ==0:
 +        nbre_joueur = input("​Veuillez entrer un nombre entre 1 et 10 : ")
 +
 +#programme
 +        try:
 +            nbre_joueur = int(nbre_joueur)
 +            if nbre_joueur < 0 or nbre_joueur > 9 :
 +               ​print("​Entre 0 et 9 svp")
 +            else:
 +                rep = 1
 +        except:
 +            print("​Un vrai entier entre 0 et 9 svp: ")
 +            rep =0
 +
 +
 +    return nbre_joueur
 +
 +
 +
 +
 +
 +    nbre=int(nbre_gagnant)
 +    print(nbre)
 +
 +    </​code>​
 
cours/activite1/python_jeu.1383828368.txt.gz · Dernière modification: 2019/05/11 14:35 (modification externe)     Haut de page