Exercices¶
Exercice 1
Dans l'interpréteur Python, saisissez une à une les instructions suivantes :
Saurez-vous deviner la valeur de c
après exécution de ces instructions ?
(Vérifiez dans la console de Thonny.)
Exercice 2
Dans l'interpréteur Python, saisissez le calcul mathématique suivant et déterminez le résultat :
Exercice 3
Copiez-collez le code suivant dans un nouveau programme Python :
Remplacez les ...
par des nombres entiers, de manière à ce que le programme affiche "OK"
.
Correction exercice 3
Par exemple :
Exercice 4
Dans un nouveau programme :
- créer une variable
nombre
et affectez-lui un nombre entier entre1
et100
(celui que vous voulez), - écrire une structure de branchement telle que :
- SI
nombre
est égal à50
, on affiche"Bingo"
, - SINON SI
nombre
est plus petit que50
, on affiche"Trop petit..."
, - SINON, on affiche
"Trop grand..."
.
- SI
Correction exercice 4
Pour les 3 exercices suivants, on utilisera la fonction input()
pour demander une saisie à l'utilisateur.
Exercice 5
Écrire un programme qui demande à l'utilisateur de saisir un premier nombre entier, puis un deuxième nombre entier, et qui affiche le produit de ces deux nombres.
Correction exercice 5
Exercice 6
Écrire un programme qui demande à l'utilisateur de saisir deux nombres, et qui affiche le quotient et le reste de la division euclidienne entre ces deux nombres.
On affichera un message de la forme :
"Le quotient est <quotient> et le reste est <reste>."
en remplaçant <quotient>
par le quotient obtenu, et <reste>
par le reste obtenu.
Correction exercice 6
Exercice 7
Écrire un programme qui demande à l'utilisateur de saisir deux nombres entiers ainsi qu'un opérateur (+
, *
, -
, /
) et qui effectue le calcul entre les deux nombres donnés avec l'opérateur donné.
En cas de division par zéro, on affichera un message d'erreur.
Correction exercice 7
nombre1 = int(input("Saisir un premier nombre : "))
nombre2 = int(input("Saisir un deuxième nombre : "))
operateur = input("Saisir un opérateur : ")
if operateur == '+':
print("Résultat :", nombre1 + nombre2)
elif operateur == '-':
print("Résultat :", nombre1 - nombre2)
elif operateur == '*':
print("Résultat :", nombre1 * nombre2)
else:
if nombre2 == 0:
print("Erreur : Division par zéro")
else:
print("Résultat :", nombre1 / nombre2)
Exercices sur les boucles bornées for
¶
Exercice 8
Écrire un programme qui affiche 20 fois le message "HELLO"
.
Exercice 9
Écrire un programme qui affiche tous les nombres de 1 à 50.
Exercice 10
Écrire un programme qui affiche tous les nombres pairs de 2 à 98.
Exercice 11
Écrire un programme qui demande à l'utilisateur de saisir :
- un message (
str
) - un nombre de répétitions (
int
)
et qui affiche le message saisi répété le nombre de fois saisi.
Correction exercice 11
Exercice 12
Écrire un programme qui demande à l'utilisateur de saisir 2 nombres entiers, et qui calcule et affiche le produit des deux nombres SANS UTILISER le symbole *
.
Correction exercice 12
nombre1 = int(input("Saisir un premier nombre : "))
nombre2 = int(input("Saisir un deuxième nombre : "))
resultat = 0 # initialiser le résultat à 0
for i in range(nombre1): # itérer 'nombre1' fois
resultat = resultat + nombre2 # ajouter le nombre2 au résultat
# on pourrait aussi écrire "total += nombre 2"
print("Résultat : ", resultat)
Exercices sur les boucles non-bornées while
¶
Si besoin, vous pouvez consulter cette partie du cours.
Exercice 13
Écrire un programme qui répète 15 fois le message "COUCOU"
à l'aide d'une boucle while
.
Aide exercice 13 - Code à trous
Exercice 14
Écrire un programme qui affiche tous les entiers impairs de 1
à 97
à l'aide d'une boucle while
.
Aide exercice 14 - Code à trous
Exercice 15
Écrivez un programme en Python qui demande à l'utilisateur d'entrer un nombre entier positif n
. Ensuite, utilisez une boucle while
pour calculer la somme de tous les entiers pairs de 2
à n
. Affichez ensuite le résultat.
Aide exercice 15 - Code à trous
n = ... # demander la saisie d'un nombre entier positif
somme = ... # initialiser une variable 'somme'
i = ... # initialiser variable utilisée dans la boucle
while ...: # TANT QUE (compléter la condition d'entrée dans la boucle)
somme = ... + ...
... # incrémenter la variable de boucle
print("Résultat : ", ...) # afficher le résultat
Exercice 16
On souhaite écrire un programme permettant de restreindre l'accès à une plateforme aux visiteurs adultes.
Écrire un programme qui :
- demande à l'utilisateur son âge,
- tant que l'âge est inférieur à 18 ans, on redemande l'âge.
- Si l'âge est d'au moins 18 ans, on affiche "Vous pouvez entrer".
Aide exercice 16 - Code à trous
Exercice 17
On veut écrire une simulation du jeu de Monopoly.
Un joueur peut rejouer s'il fait un double.
Mais attention ! S'il fait trois doubles de suite, il doit aller en prison.
Le programme à concevoir doit :
- Simuler le lancer aléatoire de deux dés à 6 faces (vous utiliserez la fonction
randint
du modulerandom
.); - Afficher la valeur de chaque face ainsi que le nombre de cases à parcourir ;
- Relancer les dés dans le cas d'un double ;
- Recommencer... et envoyer le joueur en prison s'il y a trois doubles de suite.
Un exemple d'affichage avec envoi en prison :
Aide exercice 17 - Code à trous
from random import randint
de1 = randint(1, 6) # simuler un premier lancer de dé
de2 = ... # simuler un second lancer de dé
compteur = 0 # compteur du nombre de doubles, initialisé à 0
print(...) # afficher valeurs des dés et nombre de cases à parcourir
while ... and ...: # TANT QUE (indiquer les deux conditions à vérifier)
... # afficher le message "Il y a un double, rejouez."
de1 = ... # re-simuler un premier lancer de dé
de2 = ... # re-simuler un second lancer de dé
# On sort de la boucle
if ...: # s'il y a eu 3 doubles
... # afficher le message "Vous allez en prison !"