0% ont trouvé ce document utile (0 vote)
5 vues4 pages

TP0 Programmation

Le document présente un TP d'initiation à la programmation en Python, où les élèves doivent créer un jeu de devinettes. L'ordinateur choisit un nombre aléatoire entre 1 et 100, et les joueurs ont 10 essais pour le deviner. Le TP est divisé en trois questions, chacune augmentant la complexité du jeu, en intégrant des fonctions et des classes.

Transféré par

dronespot974
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues4 pages

TP0 Programmation

Le document présente un TP d'initiation à la programmation en Python, où les élèves doivent créer un jeu de devinettes. L'ordinateur choisit un nombre aléatoire entre 1 et 100, et les joueurs ont 10 essais pour le deviner. Le TP est divisé en trois questions, chacune augmentant la complexité du jeu, en intégrant des fonctions et des classes.

Transféré par

dronespot974
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

SNT Date:

Nom: Prénom : Classe:

TP 1 Seconde: initiation a la programmation


objectifs:
- Écrire, exécuter et mettre au point un programme

I. Jeu de devinettes

Notebook sur un des premiers programmes qu’on écrit quand on apprend à programmer. Une boucle,
un test.
Ce jeu est très simple. L'ordinateur tire un nombre au hasard entre 1 et 100 et vous avez 10 essais
pour le trouver. Après chaque tentative, l'ordinateur vous dira si le nombre que vous avez proposé est
trop grand, trop petit, ou si vous avez trouvé le bon nombre.

Exemple de partie
J'ai choisi un nombre entre 1 et 100
A vous de le deviner en 10 tentatives au maximum ! Essai no 1
Votre proposition : 15
Trop petit
Essai no 2
Votre proposition : 22
Trop grand
Essai no 3
Votre proposition : 17
Trop grand
Essai no 4
Votre proposition : 16
Bravo ! Vous avez trouvé 16 en 4 essais

Q1 : Ecrire ce jeu dans lequel python choisi aléatoirement un nombre entre 0 et 100, et
essayer de trouver ce nombre en 10 étapes (avec la fonction input). Appuyer sur Ok pour
retourner une valeur.

Q2 : Transformer ce jeu en une fonction jeu(nVies) où nVies est le nombre d’itérations


maximum.

Q3 : Adapter le code pour faire une classe joueur avec une méthode jouer, où un joueur est
défini par un pseudo et son nombre de vies. Faire jouer deux joueurs et déterminer le
vainqueur.
Code du programme:
# Devine mon nombre
from random import randint
nbr_essais_max = 10

nbr_essais = 1
borne_sup = 100
mon_nombre = randint(1,borne_sup)
ton_nombre = 0
# nombre choisi par l'ordinateur
# nombre proposé par le joueur

print("J'ai choisi un nombre entre 1 et",borne_sup)


print("A vous de le deviner en",nbr_essais_max,"tentatives au maximum !")
while ton_nombre != mon_nombre and nbr_essais <= nbr_essais_max:
print("Essai no ",nbr_essais)
ton_nombre = int(input("Votre proposition : "))
if ton_nombre < mon_nombre:

print("Trop petit")
elif ton_nombre > mon_nombre:
print("Trop grand")
else:
print("Bravo ! Vous avez trouvé",mon_nombre,"en",nbr_essais,"essai(s)")

nbr_essais += 1
if nbr_essais>nbr_essais_max and ton_nombre != mon_nombre :
print("Désolé, vous avez utilisé vos",nbr_essais_max,"essais en vain.")
print("J'avais choisi le nombre",mon_nombre,".")

Q2:
import random
n = [Link](0,100)
vies = 10
appreciation = "?"
while vies > 0:
var = input("Entrez un nombre")
var = int(var)
if var < n :
appreciation = "trop bas"
print(vies, var, appreciation)
else :
appreciation = "trop haut"
print(vies, var, appreciation)
if var == n:
appreciation = "bravo !"
print(vies, var, appreciation)
break

vies -= 1

Q3:

class joueur:
def __init__(self, vies, pseudo):
[Link] = vies
[Link] = pseudo

def jouer(self):
appreciation = "?"
n = [Link](0,100)
while [Link] > 0:
message = appreciation + " -- " + [Link] + " : " +
str([Link]) + " vies restantes. Nombre choisi : "
var = input(message)
var = int(var)
if var < n :
appreciation = "trop bas"
print(vies, var, appreciation)
else :
appreciation = "trop haut"
print(vies, var, appreciation)
if var == n:
appreciation = "bravo !"
print(vies, var, appreciation)
break

[Link] -= 1

# Initialisation des deux joueurs


j1 = joueur(10, "joueur 1")
j2 = joueur(10, "joueur 2")

# j1 et j2 jouent
[Link]()
[Link]()

# Nombre de vies restantes à chaque joueur


print("Nombre de vies restantes à chaque joueur")
print([Link] + " : " + str([Link]) + " restantes")
print([Link] + " : " + str([Link]) + " restantes")

# Résultat de la partie
print("Résultat de la partie")
if [Link] < [Link]:
print([Link] + "a gagné la partie")
elif [Link] == [Link]:
print("match nul")
else: print([Link] + " a gagné la partie")
? -- joueur 1 : 10 vies restantes. Nombre choisi : 50
3 50 trop haut
trop haut -- joueur 1 : 9 vies restantes. Nombre choisi : 25
3 25 trop haut
trop haut -- joueur 1 : 8 vies restantes. Nombre choisi : 10
3 10 trop haut
trop haut -- joueur 1 : 7 vies restantes. Nombre choisi : 5
3 5 trop bas
trop bas -- joueur 1 : 6 vies restantes. Nombre choisi : 7
3 7 trop haut
3 7 bravo !
? -- joueur 2 : 10 vies restantes. Nombre choisi : 50
3 50 trop haut
trop haut -- joueur 2 : 9 vies restantes. Nombre choisi : 25
3 25 trop bas
trop bas -- joueur 2 : 8 vies restantes. Nombre choisi : 30
3 30 trop haut
3 30 bravo !
Nombre de vies restantes à chaque joueur
joueur 1 : 6 restantes
joueur 2 : 8 restantes
Résultat de la partie
joueur 1a gagné la partie

Vous aimerez peut-être aussi