TP0 Devine Le Nombre

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 3

NUMÉRIQUE ET

SCIENCES PROGRAMMATION TP0 : Devine le nombre 1ere


INFORMATIQUES

RÈGLES DU JEU

Ce jeu est très simple.


L'ordinateur tire un nombre au hasard entre 1 et 30 et vous devez essayer
de 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.

Remarque : les nombres dans l'exemple ci-contre (15,5,10,12,13) ont été


entrés au clavier par le joueur.

CODE DU PROGRAMME

1 # Devine mon nombre Remarques :


2 from random import randint
3
4
5 nbr_essais = 0
6 borne_sup = 30
7 mon_nombre = randint(1,borne_sup) # nombre choisi par l'ordinateur
8 ton_nombre = 0 # nombre proposé par le joueur
9
10
11 print("J'ai choisi un nombre entre 1 et",borne_sup)
12
13 while ton_nombre != mon_nombre :
14
15 nbr_essais += 1
16 print("Essai no ",nbr_essais)
17
18 ton_nombre = int(input("Votre proposition : "))
19
20
21 if ton_nombre < mon_nombre:
22 print("Trop petit")
23 elif ton_nombre > mon_nombre:
24 print("Trop grand")
25 else:
26 print("Bravo ! Vous avez trouvé",mon_nombre,"en",nbr_essais,"essai(s)")

● Ouvrez le logiciel EduPython


● Enfin, dans Edupython, cliquez sur Fichier/Ouvrir et sélectionnez le fichier que vous venez de télécharger.

N’oubliez pas de sauvegarder régulièrement.

NSI Programmation : TP0 page 1/3


ANALYSE DU CODE

1. Lancez le jeu et faites quelques parties. Essayez d’obtenir le meilleur score possible. Pour cela, cliquez sur le bouton
Exécuter (Flèche verte)

2. Au lieu que le programme choisisse aléatoirement un nombre entre 1 et 30, nous aimerions qu’il choisisse un nombre entre
1 et 100. Modifiez le code pour que cela soit le cas et lancez le programme. Testez votre programme plusieurs fois.

3. Nous avons dans ce programme 4 variables qu'il faut initialiser. Cela signifie qu'il faut leur donner une valeur de départ. Si
on ne le fait pas, l'interpréteur Python va envoyer le message d'erreur.

Supprimez l’initialisation d’une des variables ci-dessus au choix ( supprimer la ligne entière) puis lancez le programme. Que
constatez vous ? Notez ce qui apparaît dans la console :

C'est au moment où l'on initialise une variable que l'interpréteur Python la crée. On peut
voir une variable comme une boîte qui va contenir une valeur : le nom de la variable correspond
au nom de la boîte et la valeur de la variable correspond à une donnée que l’on glisse dans la boîte.

4. Ré-écrivez la ligne que vous venez de supprimer.

5. A votre avis, a quoi sert la ligne 7 :

mon_nombre = randint(1,borne_sup) # nombre choisi par l'ordinateur

6. Modifiez cette ligne afin que le nombre choisi par l’ordinateur soit compris entre 10 et 100. Lancez et testez votre
programme.

7. Bien que le nombre choisi par l’ordinateur soit compris entre 10 et 100 grâce à votre modification précédente, le message
qu’affiche l’interpréteur dans la console dit le contraire (J'ai choisi un nombre entre 1 et 100 ). Faites en sorte
que ce message affiche les bonnes valeurs.

8. D'après vous a quoi sert la fonction print() :

9. Il serait plus pratique de créer une variable borne_inf qui correspondrait à la borne inférieure encadrant le nombre de
l’ordinateur. Comme la variable borne_sup ajoutez la variable borne_inf et initialisez la à 10.
N’oubliez pas de modifier la fonction random() ainsi que la fonction print() (inspirez vous de la ligne 26 ).
Lancez votre programme et testez le.

10. Que signifie le mot-clé while ?

11. A quoi correspond le symbole != ?

12. Résumez en une phrase les conditions selon lesquelles le programme continue.

NSI Programmation : TP0 page 2/3


13. Quelle ligne permet au joueur d’entrer une proposition ?

14. Que signifie les mot-clé if, elif et else ?

15. Certains espaces ont été surlignés . Pourquoi ? Comment cela s’appelle t’il ?

MANIPULATION DU CODE

16. Il serait intéressant de sauvegarder le meilleur score du joueur.


Créez une variable highscore et initialisez-la à 1000.
Une fois que le joueur a trouvé le nombre de l’ordinateur, vérifiez si la valeur contenue dans la variable highscore est
supérieure au nombre d’essais qu’à mis le joueur pour trouver le nombre. Si c’est le cas, remplacez le contenu de la variable
highscore par le contenu de la variable nbr_essais.
N’oubliez pas d’ajouter des print() pour afficher le meilleur score puis testez votre programme plusieurs fois.

17. A quoi sert les # en python ? comme pour la ligne 1 par exemple : # Devine mon nombre ?

Si on modifie la ligne 1 que se passe t’il ?

18. Ajoutez un commentaire pour expliquer l’utilité de la variable highscore .

19. Travail en groupe : Imaginez ce que vous pourriez ajouter comme fonctionnalités au programme et
essayez de les implémenter par groupe de 2/3 élèves. N’hésitez pas à poser des questions ainsi
qu’à chercher des solutions sur internet.

Détaillez vos idées et vos tentatives d’implémentations :

NSI Programmation : TP0 page 3/3

Vous aimerez peut-être aussi