01b Exos Rentrée Correction
Exercice 1⚓︎
On donne le code python :
age = 12
if age >= 18:
print('adulte')
else:
print('enfant')
- Ouvrir pyzo (éditeur python), et créer un nouveau fichier en copiant-collant le code ci-dessus.
- Faire exécuter, et vérifier qu'il s'affiche "enfant".
- Modifier le code pour gérer le cas des adolescents (entre 10 et 18 ans...).
- 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.
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.
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⚓︎
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⚓︎
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⚓︎
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".
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.
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.
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.