Aller au contenu

01b Exos Rentrée Correction

Exercice 1⚓︎

On donne le code python :

🐍 Script Python
age = 12
if age >= 18:  
    print('adulte')
else:
    print('enfant')
  1. Ouvrir pyzo (éditeur python), et créer un nouveau fichier en copiant-collant le code ci-dessus.
  2. Faire exécuter, et vérifier qu'il s'affiche "enfant".
  3. Modifier le code pour gérer le cas des adolescents (entre 10 et 18 ans...).
  4. Utilisez la fonction input() pour demander son âge à l’utilisateur.

Il faut bien penser à convertir la chaîne de caractères retournée par input() en entier int.

Pour la distinction des 3 cas adulte/ado/enfant, il y a plusieurs façon de faire, mais cela utilise toujours if / elif / else.

🐍 Script Python
age = int(input('Quel est votre âge ? '))
if age >= 18:  
    print('adulte')
elif age >= 10:
    print('adolescent')
else:
    print('enfant')

Exercice 2⚓︎

Créer un nouveau fichier sur pyzo. Le sauvegarder dans vos documents sous un nom du type "Fiche01b-Exo2.py". Écrire un programme qui demande en entrée (avec input()) à l’utilisateur un nombre (qui peut être décimal) et renvoie en sortie un affichage pour dire si ce nombre est positif, négatif ou nul. Aide : elif.

🐍 Script Python
x = float(input("Saisir un nombre décimal : "))
if x < 0:
    print("Ce nombre est strictement négatif")
elif x == 0:
    print("Ce nombre est nul")
else:
    print("Ce nombre est strictement positif")

Exercice 3⚓︎

Écrire un programme qui demande en entrée à l’utilisateur un nombre (qui peut être décimal) et renvoie en sortie un affichage pour dire si ce nombre appartient à l’intervalle [2; 8].

Réaliser trois scripts en utilisant trois méthodes différentes :

  • vous ne pouvez pas utiliser plusieurs tests dans le même if, mais vous pouvez utiliser plusieurs if imbriqués les uns dans les autres ;
  • vous pouvez utiliser le mot-clé and dans la condition ;
  • vous pouvez utiliser le mot-clé or dans la condition.

Imbrication de deux structures conditionnelles⚓︎

🐍 Script Python
a = float(input("Saisir un nombre a : "))
if a >= 2:
    if a <= 8:
        print("a est dans l'intervalle [2 ; 8].")
    else:
        print("a n'est pas dans l'intervalle [2 ; 8].")
else:
    print("a n'est pas dans l'intervalle [2 ; 8].")

Avec le mot-clé and⚓︎

🐍 Script Python
a = float(input("Saisir un nombre a : "))
if a >= 2 and a <= 8:
    print("a est dans l'intervalle [2 ; 8].")
else:
    print("a n'est pas dans l'intervalle [2 ; 8].")

Avec le mot-clé or⚓︎

🐍 Script Python
a = float(input("Saisir un nombre a : "))
if a < 2 or a > 8:
    print("a n'est pas dans l'intervalle [2 ; 8].")
else:
    print("a est dans l'intervalle [2 ; 8].")

Exercice 4⚓︎

Écrire un programme qui affiche 20 fois le texte "il fait beau ce matin".

🐍 Script Python
for i in range(20):
    print("il fait beau ce matin")

Exercice 5⚓︎

Écrire un programme qui demande à l’utilisateur de saisir un nombre entier et qui renvoie en sortie un affichage indiquant s’il est divisible ou pas par 7.

🐍 Script Python
n = int(input("Saisir un entier : "))
if n % 7 == 0:
    print("Cet entier est divisible 7")
else:
    print("Cet entier n'est pas divisible 7")

Exercice 6⚓︎

En utilisant la fonction random(), écrire un programme qui affiche aléatoirement pile ou face de façon équiprobable. On pensera à importer le paquet random et à demander l’aide help("random"), les différentes fonctions étant classées par ordre alphabétique.

🐍 Script Python
from random import *  # On importe toutes les fonctions du module random
a = random()         # On affecte à la variable a un nombre pseudo-aléatoire compris entre 0 et 1 (exclus)
if a <= 0.5:         # On coupe en deux l'intervalle, chaque demi-intervalle étant équiprobable
    print("Pile")
else:
    print("Face)

Dans la bibliothèque random, il existe d'autres fonctions qui peuvent servir à résoudre ce problème (randint(), choice(), ...).

Les exercices en plus ne sont pas corrigés. N'hésitez pas à poser des questions.