1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
| from tkinter import Tk, Label, Button, Radiobutton, StringVar # On importe certaines fonctions depuis Tkinter
from time import time #On importe "l'heure"
import random #On importe la fonction aléatoire
tentatives=15 #On initialise le max de tentatives
prix = random.randint(1, 500) # On dit entre quel nombre on veut que ça prenne
score = 0 #On initalise le score
tentatives=0 # On initialise les tentatives
#****************************
#****Codage des fonctions****
#****************************
#Fonction partie
def partie():
debut = time() #Initialise l'heure de début
tentatives=0 #Met le nombre d'essais à 0
score =0 #Initialise le score
print("Devinez le juste prix ! Le prix est un nombre entre 1 et 500 inclus. Les informations seront de la console python.Appuyez sur entrer pour confirmer ")#Affiche un message dans la fenetre Python input
try: #Si la reponse donnée fait partie du type de réponse attendue
while True: #Si la valeur saisie est corecte
nombre = int(input()) #Définir le nombre
tentatives += 1 #On ajoute une tentative à chaque fois que l'on passe dans la boucle
if nombre < prix: #Si trop bas
print("Le juste prix est plus haut")
if nombre > prix: #Si trop haut
print("Le juste prix est plus bas")
if nombre == prix: #Si t'as bon
score = score + 1 #On ajoute 1 à la variable score
print(f"Félicitations, vous avez trouvé le juste prix {prix} , en {tentatives} essais , votre score est de {score} , vous avez mis {temps} secondes !")
break #On coupe le programme
if tentatives == 15:#Si on a fait 15 tentatives
print (f"Perdu le juste prix était {prix} ! Votre score est de {score} , vous avez mis {temps} secondes .")
break # On coupe le programme
temps = time()- debut #On soustrait l'heure de départ à l'heure qu'il est
if temps > 20: #Si c'est suprérieur à 20 secondes on coupe le programme
print (f"Trop long , le juste prix était {prix} ! Votre score est de {score}.")
break #On le coupe
print("Partie terminée")
except: #Si la reponse donnée ne fait pas partie du type de reponse attendue
continuer()#Appel la fonction continuer
#La fonction pour continuer
def continuer():
reponse = input ("Voulez-vous continuer ?") #Pose une question input pour demander si la personne veut continuer ou pas
if reponse == 'oui' : #Si la perssonne répond oui alors...
partie()#Appel de la fonction partie
else: # Si la personne répond autre chose que oui alors...
confirmations()#Appel de la fonction confirmation
#La fonction qui nous sert à confirmer notre choix
def confirmations():
reponse = input ('Êtes vous sûr de vouloir quitter le programme ? Répondez par oui ou non. Si vous repondez autre chose le programme se fermera.')#Pose une question input pour demander si la personne est certaine de son choix ou pas
if reponse == 'oui' :#Si la perssonne répond oui alors...
quitter()#Appel de la fonction quitter
if reponse == 'non':#Si la perssonne répond non alors...
partie()#Appel de la fonction partie
#Fonction quitter
def quitter():
print()
print("************************************************")
print("********* FIN du programme. A Bientôt **********")
print("************************************************")
print()
#Fonction pour le bouton jouer
def jouer():
fen.destroy()#Ferme la fenetre tkinter
partie()#Fait appel à ma fonction partie
# ****************************************
# *********** Partie Graphique ***********
# ****************************************
fen = Tk() #initialisation d'une fenêtre graphique
# Titre
intro = Label(fen, text='Juste prix') #Genere le nom affiché sur la fenetre
intro.config(font = "Impact 50", fg="Orange", bg="Black") #Genere la taille et la couleur du texte affiché
intro.pack(pady=20)#Initialise l'espace entre la phrase et le hot de la page
# Bouton joue
bouton = Button(fen, text= "JOUER", padx= 10,pady=10, font = "Arial 20", bg="Orange", fg="Black", command= jouer)#Genere la taille, la couleur et la fonction du texte affiché dans le bouton
bouton.pack(pady=20)#Genere l'espacement entre le bouton et le texte du haut
# Bouton quitter
bouton_quitter = Button(fen, text="QUITTER", font = "Arial 20", bg="Orange", fg="Black", command=fen.destroy)#Genere la taille, la couleur et la fonction du texte affiché dans le bouton
bouton_quitter.pack(pady=20)#Genere l'espacement entre le bouton actuelle et le bouton d'en haut
#texte representatif
info = Label (fen, text='Dans ce jeu vous allez devoir trouver un nombre entre 1 et 500 compris. Vous allez disposer de 20 secondes ') #Genere le nom affiché sur la fenetre
info.config(font= "Arial 20", fg ="Orange", bg="Black")
info.pack(pady=30)
info = Label (fen, text=' et 15 tentatives si vous échouez votre score sera de 0 mais si vous réussissez votre score sera de 1.') #Genere le nom affiché sur la fenetre
info.config(font= "Arial 20", fg ="Orange", bg="Black")
info.pack(pady=30)
info = Label (fen, text='Toutes les informations seront données dans la console python. Bonne chance à vous ! ') #Genere le nom affiché sur la fenetre
info.config(font= "Arial 20", fg ="Orange", bg="Black")
info.pack(pady=30)
# Configuration générale de la fenêtre
fen.config(bg = "Black") # Couleur du fond de la fenêtre
fen.title("Programme") # Titre de la fenêtre
fen.geometry("1920x1080") # Taille de la fenêtre
fen.mainloop() # Création de la d'affichage |
Partager