Python au lycée (3) : Les boucles Exercices

Algorithme : Jeu du plus ou moins

Durée estimée
15 minutes
Difficulté
Votre progression

Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.

Créer un compte

Objectifs travaillés

Vous devez écrire un programme Python pour le jeu du « Plus ou moins » Au départ, le programme va choisir au hasard un nombre « mystère » compris entre 1 et 99 (on utilisera l'instruction randint(1, 99) du module random).

Ensuite, le joueur propose un nombre.

Si c'est le nombre mystère, le programme affiche « Vous avez gagné ! » et le nombre de coup(s) qui ont été nécessaire(s) pour trouver le nombre mystère.

Sinon, le programme indique si le nombre proposé est trop petit ou trop grand jusqu'à ce que le joueur ait trouvé le nombre mystère.

Corrigé

Le nombre de propositions n'est pas connu à l'avance : on utilise donc une boucle while (boucle non bornée) qui se répète tant que le joueur n'a pas trouvé le nombre mystère.

from random import randint

nombre_mystere = randint(1, 99)
nombre_coups = 0
saisie = -1

while saisie != nombre_mystere:
    saisie = int(input("Veuillez entrer un nombre : "))
    nombre_coups = nombre_coups + 1
    if saisie == nombre_mystere:
        print("Vous avez gagne !")
    elif saisie < nombre_mystere:
        print("Le nombre mystere est plus grand !")
    else:
        print("Le nombre mystere est plus petit !")

print(nombre_coups, "coup(s) ont ete necessaire(s) pour reussir.")

L'instruction randint(1, 99) (importée depuis le module random) tire un entier au hasard entre $1$ et $99$. La variable nombre_coups compte le nombre de propositions du joueur.