02 Exos Conditions et boucle For Correction
Exercice 1 :⚓︎
Écrire un programme qui demande à l’utilisateur sa moyenne au BAC et qui lui indique sa mention:
moyenne < 8 : Recalé
8 ≤ moyenne < 10 : Oral de rattrapage
10 ≤ moyenne < 12 : Admis
12 ≤ moyenne < 14: Assez bien
14 ≤ moyenne < 16: Bien
16 ≤ moyenne : Très bien
moyenne = float(input("Saisir votre moyenne au Bac : "))
if moyenne < 8:
print("Recalé")
elif moyenne < 10:
print("Oral de rattrapage")
elif moyenne < 12:
print("Admis")
elif moyenne < 14:
print("Assez bien")
elif moyenne < 16:
print("Bien")
else:
print("Très bien")
Exercice 2 :⚓︎
Écrire un programme qui affiche les carrés des nombres entiers de 1 à 25.
1^2 = 1
2^2 = 4
...
for nombre in range(1, 26):
print(f"{nombre}^2 = {nombre**2}.")
Exercice 3 :⚓︎
Écrire un programme qui demande à l'utilisateur de saisir un entier n, puis qui l'affiche à l'écran.
n = int(input("Saisir un entier n : "))
print(n)
Exercice 4 :⚓︎
Écrire un programme qui demande à l'utilisateur de saisir un entier n, puis affiche la table de multiplication de n.
Pour n = 6, on devra obtenir :
1 * 6 = 6
2 * 6 = 12
3 * 6 = 18
...
10 * 6 = 60
n = int(input("Saisir un entier n : "))
for j in range(1, 11):
print(f"{n} * {j} = {n*j}")
n = int(input("Saisir un entier n : "))
for j in range(1, 11):
print(n, "*", j, "=", n*j)
Exercice 5 :⚓︎
Écrire un programme qui demande à l'utilisateur de saisir un entier n, puis qui calcule les 20 premiers résultats de la table de n, mais ne les affiche que si le résultat finit par n.
Pour n = 6, on devra obtenir :
1 * 6 = 6
6 * 6 = 36
11 * 6 = 66
16 * 6 = 96
Aide : que vaut, par exemple, 53 % 10 ?
n = int(input("Saisir un entier n : "))
for j in range(1, 20):
if n*j % 10 == n:
print(n, "*", j, "=", n*j)
Exercice 6 :⚓︎
Écrire un programme qui affiche la suite de symboles suivante :
*
**
***
****
*****
******
*******
On peut utiliser une boucle dans une boucle : une pour chaque ligne, une boucle pour gérer toutes les lignes.
for k in range(1, 8):
for j in range(1, k+1):
print("*", end="")
print()
Pour afficher une ligne avec le bon nombre d'astérisques, on peut utiliser la multiplication de chaîne de caractères :
for k in range(1, 8):
print(k * "*")
Exercice 7 :⚓︎
On sait qu'une combinaison d'un cadenas a 2 chiffres, tous entre 0 et 3 (inclus).
Écrire un programme qui affiche toutes les combinaisons possibles (00, 01, 02, 03, 10, 11, ..., 33).
On pourra utiliser plusieurs boucles for imbriquées.
# On peut convertir les chiffres en chaînes pour les concatener :
for chiffre1 in range(0, 4):
for chiffre2 in range(0, 4):
print(str(chiffre1)+str(chiffre2), end=", ")
Exercice 8 :⚓︎
On sait qu'une combinaison d'un cadenas a 3 chiffres, tous entre 0 et 3 (inclus).
Écrire un programme qui affiche toutes les combinaisons possibles (000, 001, 002, 003, 010, 011, ..., 333).
On pourra utiliser plusieurs boucles for imbriquées.
for chiffre1 in range(0, 4):
for chiffre2 in range(0, 4):
for chiffre3 in range(0, 4):
print(f"{chiffre1}{chiffre2}{chiffre3}, ", end="")
print() #un petit retour à la ligne de temps en temps, quand même