Cours Python : Affectation et Variables
Cours Python : Affectation et Variables
Propriété 1
le script :
Exercice 1
Que vaut a à la fin de ce script :
a=1
b=-1
a=a*b
a=a+b
Réponse
In [1]: a=1
b=-1
a=a*b
a=a+b
print(a)
-2
Hervé Trézène aimerait avoir un algorithme permettant de permuter les nombres stockés
dans deux variables a et b. Pour simplifier, on suppose que la variable a stocke le nombre
8, tandis que la variable b stocke le nombre -3.
[Link] 1/19
15/10/2025 23:18 cours_python_corrigé
Réponse
ligne numero valeur stockée dans la variable a valeur stockée dans la variable b
4 8 non affectée
5 8 -3
7 -3 -3
8 -3 -3
b. Est-ce le programme proposé par Yves permet d'échanger les valeurs stockées dans
les varaibles a et de b ?
Réponse
[Link] 2/19
15/10/2025 23:18 cours_python_corrigé
2: a=8
3: b=-3
4: # programme proposé par Roger pour la permutation du contenu :
5: b=a
6: a=b
a. Compléter sur une feuille la table d'exécution commencée ci-dessous, sans prendre en
compte les lignes de commentaires :
Réponse
ligne numero valeur stockée dans la variable a valeur stockée dans la variable b
2 8 non afffectée
3 8 -3
5 8 8
6 8 8
b. Est-ce le programme proposé par Amine permet d'échanger les valeurs stockées dans
les variables a et de b ?
Réponse
3. Proposer un programme qui permet d'échanger les valeurs stockées dans les
variables a et de b ?
Réponse
a: -3
b: 8
2. Affichage en python
Propriété 2 :
[Link] 3/19
15/10/2025 23:18 cours_python_corrigé
Exemple 2 :
In [9]: prenom="Bob"
print("Mon prénom est :",prenom)
Exercice 3 :
Réaliser un script qui contient trois variables : prenom, nom et age et qui doit afficher :
Dans le cas où vous vous appelleriez Alphonse Dansletas et que vous seriez âgé de 358
ans.
Réponse
Propriété 3 :
Exemple 3 :
prenom=input("quel est ton prénom?")
print(prenom)
Exercice 4 :
[Link] 4/19
15/10/2025 23:18 cours_python_corrigé
Ecrire un script en Python qui demande à l'utilisateur, son prénom, son nom et son âge
et qui réalise un affichage comme dans l'exercice 2.
Réponse
Comme l'information récupérée grâce à un input est une chaîne de caractères, il va falloir
changer le type de la variable pour permettre d'effectuer des calculs avec.
Exercice 5:
Un boulanger désire un programme qui demande à l'utilisateur le nombre de baguettes
qu'il désire, qui calcule le prix total (sachant qu'une baguette coûte 1.10 €) et qui affiche
le prix que l'utilisateur doit payer.
Réponse
[Link] 5/19
15/10/2025 23:18 cours_python_corrigé
Réponse
La différence vient de la ligne 1 : la fonction int (de integer c'est à dire en français
entier) transforme la chaine de caractères saisie au clavier en un nombre entier.
L'opération à la ligne 2 peut maintenant s'éxécuter.
Propriété 4 :
Exercice 6
Vous êtes chargé de mettre en place une borne automatique pour régler les droits
d’entrée à un parc d’attraction.
Chaque adulte doit payer 21€ pour rentrer et chaque enfant doit payer 13€. Pour cette
borne, vous devez programmer sur Python un programme qui renvoie le prix à payer en
fonction du nombre d’adultes et d’enfants du groupe.
Réponse
Exercice 7 :
L'Indice de Masse Corporelle (IMC) est un indicateur chiffré utilisé en médecine. L'IMC
d'une personne est donné par la formule I M C où la masse est en kilos et la
masse
=
2
taille
taille en mètres.
[Link] 6/19
15/10/2025 23:18 cours_python_corrigé
Proposez un programme qui demande à l'utilisateur sa taille et sa masse puis qui affiche
l'IMC de la personne.
Pensez à écrire un texte clair à destination de l'utilisateur pour qu'il sache quoi saisir.
Réponse
pour tester l'égalité deux éléments : a==b renvoie True si a et b sont égaux,
False sinon. pour tester la différence deux éléments : a!=b renvoie True si a est
différent de b et False sinon.
Propriété 6
if condition :
instruction(s) à effectuer dans la cas où la condition est
remplie
else :
instruction(s) à effectuer dans la cas contraire
Le bloc else n'est pas obligatoire
[Link] 7/19
15/10/2025 23:18 cours_python_corrigé
Vous remarquerez le symbole : très important en Python qui marque le début d'un
bloc.
Exemple 6 :
a=float(input("Entrer un nombre réel : "))
if a>=0 :
print("Vous avez entré un nombre positif ou nul",a)
else :
print("Vous avez entré un nombre négatif",a)
Avec a=-6 ?
Avec a=0 ?
Avec a="positif" ?
Réponse
Avec a = 8 : Comme a>0 alors le programme affichera Vous avez entré un nombre
positif ou nul 8
Avec a = -6 : Comme a<0 alors le programme affichera Vous avez entré un nombre
négatif -6 Avec a=0 : Comma a=0 alors me programme affichera Vous avez entré un
nombre positif ou nul 0 Avec a="positif" : le programme affichera une erreur car il ne
pourra pas convertir la chaine de caractères saisie en un nombre
Exemple7
On peut détailler l'exemple précédent ainsi en trois cas distinctions par imbrications de
deux instructions conditionnelles :
a=float(input("Entrer un nombre réel : "))
if a>0:
print("Vous avez entré un nombre strictement positif",a)
else: # ici, on est dans le cas où a<= 0
if a==0:
print("Vous avez entré un nombre nul",a)
else: # ici, on est dans le cas où a<=0 et a!=0 donc où a<0
print("Vous avez entré un nombre négatif",a)
[Link] 8/19
15/10/2025 23:18 cours_python_corrigé
il est possible de simplifier l'écriture de ces imbrication en utilisant le mot clé elif qui
est la contraction de else if .
Propriété 7
La structure elif :
if condition1 :
instruction(s)
elif condition2 :
instruction(s)
elif condition3 :
instruction(s)
else :
instruction(s)
On peut réécrire l'imbrication de l'exemple précédent ainsi :
Exercice 10:
Écrire un programme qui :
réponse
Exercice 11 :
Dans une école de rugby, il y a quatre groupes :
le groupe des U8 pour les joueurs entre 8 ans inclus et 10 ans exclus ;
[Link] 9/19
15/10/2025 23:18 cours_python_corrigé
le groupe des U10 pour les joueurs entre 10 ans inclus et 12 ans exclus ;
le groupe des U12 pour les joueurs entre 12 ans inclus et 14 ans exclus ;
le groupe des U14 pour les joueurs entre 14 ans inclus et 16 ans exclus.
Le dirigeant veut qu'un enfant, accompagné de ses parents, allant sur le site Internet de
l'école puisse connaître le groupe qui lui correspondrait une fois son âge saisi.
Ne sachant comment structurer le programme, il fait appel à vous afin que vous lui
écriviez un programme, écrit en langage Python, qui demande l'âge de l'enfant et
renvoie la catégorie une fois la saisie de l'âge effectuée.
réponse
5. Fonction en Python
Une fonction en informatique est un peu comme une fonction en maths. Elle prend un
ensemble d'argument et renvoie quelque chose.
Propriété 8
def nomDeLaFonction(argument1,argument2...):
instruction 1
instruction 2
.
.
.
return retourDeLaFonction
Exemple 9 :
[Link] 10/19
15/10/2025 23:18 cours_python_corrigé
def f(x):
return x**2
Pour calculer l'image de 1 , en mathématiques vous feriez f(1) , en Python c'est pareil !
Tester f(1)
print(f(1))
print(somme(10,5))
15
Exercice 13
Écrire une fonction multiplication(a,b) qui renvoie la multiplication de a par b.
Réponse
print(multiplication(10,2))
20
Exercice 14
1. Proposer une fonction, nommée mini2 qui prend comme arguments deux
nombres entiers a et b et qui renvoie le minimum de ces deux nombres.
2. Proposer une fonction, nommée mini4 , qui : prend comme arguments quatre
nombres entiers a, b, c et d,
fait appel plusieurs fois à la fonction mini2 pour finalement trouver le minimum des
quatre nombres
[Link] 11/19
15/10/2025 23:18 cours_python_corrigé
Réponse
def mini4(a,b,c,d):
return min (min(a,b),min(c,d))
print(mini2(-5,4))
print(mini4(-9,0,5,96))
-5
-9
Propriété 9
for i in range(n):
instruction 1
instruction 2
...
Dans cette boucle i prendra les valeurs de 0 à n−1.
Toutes les instructions dans la boucle seront appliquées pour chaque valeur de i.
Dans cette structure, on connait à l'avance le nombre de répétitions. Dans notre cas, il
est égal à n.
exemple 10
In [3]: s=0
for i in range(11):
[Link] 12/19
15/10/2025 23:18 cours_python_corrigé
s=s+i
print(s)
55
Exercice 15
Ecrire une fonction somme(n) où n est un entier qui renvoie la valeur de la somme
1+2+3+...+n.
Réponse
print(somme(5))
15
Exercice 16
Un village en zone périurbaine compte aujourd'hui 2300 habitants. Le village voit sa
population augmenter chaque année de 120 habitants.
Proposez une fonction nommée population qui prend comme argument un entier N et
qui renvoie la population de ce village au bout de N années écoulées.
Réponse
print(population(1))
print(population(3))
2420
2660
[Link] 13/19
15/10/2025 23:18 cours_python_corrigé
Exercice 17
La comète de Halley passe à proximité du Soleil tous les 76 ans. Son dernier passage a eu
lieu 1986.
La comète 55P/Tempel-Tuttle pase à proximité du Soleil tous les 33 ans. Son dernier
passage a eu lieu en 1998.
Proposer un programme qui affiche l'année de la prochaine fois où les deux comètes
paseront à proximité du Soleil la même année.
Réponse
In [24]: i_halley = 1
i_tempel = 1
for i in range(100):
annee_halley = 1986 + i_halley * 76
annee_tempel = 1998 + i_tempel * 33
if annee_halley == annee_tempel :
print ( "l'année de la prochaine apparition des 2 comètes est ",annee_ha
break;
elif annee_halley > annee_tempel :
i_tempel = i_tempel +1
else :
i_halley = i_halley + 1
[Link] 14/19
15/10/2025 23:18 cours_python_corrigé
ch="Bonjour à [Link].s"
for elt in ch:
print(elt)
Exercice 18
Tester le script ci-dessus pour vérifier qu'il réalise bien à ce qui a été annoncé et modifier
la chaîne de caractères avec une autre phrase (Vous pouvez aussi rajouter des nombres
et des symboles).
réponse
B
o
n
j
o
u
r
t
o
u
.
t
e
.
s
Exercice 19
1. Que fait le code suivant :
Réponse
[Link] 15/19
15/10/2025 23:18 cours_python_corrigé
Exercice 20
Proposer une fonction pour_perec qui remplace tous les "e" d'une phrase par un espace "
".
print(pour_perec("cerater"))
c rat r
La structure while
Voici la structure en Python d'une boucle while
while condition:
instruction 1
instruction 2
...
Tant que la condition est vraie les instructions du bloc sont exécutées.
Ne jamais entrer dans une boucle : si la condition au départ vaut False, la boucle
while ne sera jamais exécutée.
[Link] 16/19
15/10/2025 23:18 cours_python_corrigé
Exemple
Une balle part d'une hauteur de 2 mètres et perd 10% de sa hauteur à chaque rebond.
On cherche le nombre de rebonds pour la balle atteigne un maximum de 1,5 mètre de
hauteur. Ce problème (on parle de problème de seuil) peut être traité en python par le
script suivant :
hauteur = 2
rebond = 0
seuil = 1.5
while hauteur>seuil:
rebond = rebond+1
hauteur = hauteur*0.9
print(rebond)
Tester ce script
In [28]: hauteur = 2
rebond = 0
seuil = 1.5
while hauteur>seuil:
rebond = rebond+1
hauteur = hauteur*0.9
print(rebond)
Exercice 21
Une cuve d'eau à une contenance de 1000L. En moyenne la cuve d'eau se remplis de 3L
d'eau par jours. Écrire une fonction remplir() qui renvoie le nombre jours qu'il faudra
pour remplir la cuve.
reponse
print(remplir())
334
Exercice 22
[Link] 17/19
15/10/2025 23:18 cours_python_corrigé
Arjuna souhaite travailler dans un centre d'arts martiaux quelques heures par semaine. À
la suite d'un entretien, deux possibilités de salaire s'offrent à lui :
Proposer une fonction choix qui renvoie le nombre d'heures à partir duquel la
proposition 1 est préférable pour Arjuna.
Réponse
print(choix())
32
Exercice 23
Lorsque l'utilisateur saisit une donnée, il peut être utile de vérifier qu'elle est conforme à
ce qu'on attend de lui.
réponse
In [6]: tentative=0
nombre=-1
while ( tentative <10 and nombre < 0 ) :
nombre = int(input("Entrer un nombre positif"))
tentative = tentative+1
if tentative == 10 :
print(" On vous demandait de rentrer un nombre positif, nombre de tentatives
[Link] 18/19
15/10/2025 23:18 cours_python_corrigé
[Link] 19/19