Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
Université Amar TELIDJI - Laghouat
Faculté des Sciences
Département des Sciences de la Matière
Master Physique Médicale
Année universitaire : 2025/2026
Cours : Langage de programmation I
Partie 4 : Programmation par Python, Opérateurs de comparaison conditionnelle
Contenu de la partie 4 :
Ø Partie 4 : Programmation par Python, Opérateurs de comparaison conditionnelle
§ Contrôle du flux d’exécution
§ Séquence d’instructions
§ Sélection ou exécution conditionnelle
§ Opérateurs de comparaison
§ Instructions composées – blocs d’instructions
§ Instructions imbriquées
§ Instruction composée : en-tête, double point, bloc d’instructions indenté
§ Quelques règles de syntaxe Python
§ Instructions répétitives
§ Réaffectation
§ Répétitions en boucle – l’instruction while
§ Élaboration de tables
§ Construction d’une suite mathématique
§ Boucle for
§ Exercices d’applications
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
1/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
1. Partie 3 : Programmation par Python, Opérateurs de comparaison conditionnelle
1.1. Contrôle du flux d’exécution
L’activité d’un analyste-programmeur est la résolution de problèmes : Pour résoudre un problème, il faut
toujours effectuer des actions dans un certain ordre. La description structurée de ces actions et l’ordre
dans lequel sont effectués s’appelle un algorithme. Le chemin suivi par Python à travers un programme
est appelé un flux d’exécution, et les constructions sont appelées des instructions de contrôle de flux. Les
structures de contrôle sont les groupes d’instructions qui déterminent l’ordre dans lequel les actions sont
effectuées. En programmation, il en existe trois :
· La séquence,
· La sélection,
· La répétition
1.1.1. Séquence d’instructions
Les instructions d’un programme s’exécutent les unes après les autres, dans l’ordre où elles ont été écrites
à l’intérieur du script. L’expérience montre qu’un grand nombre d’erreurs sémantiques sont la
conséquence d’une mauvaise disposition des instructions. Il faut être extrêmement attentif à l’ordre dans
lequel vous placez vos instructions les unes derrière les autres. Par exemple, dans la séquence
d’instructions suivantes :
>>> a, b = 3, 7
>>> a = b
>>> b = a
>>> print a, b
Si vous intervertissez les 2e et 3e lignes, quel est le résultat obtenu ?
Ø Python exécute normalement les instructions de la première à la dernière ligne, sauf lorsqu’il
rencontre une instruction conditionnelle comme l’instruction if qui va permettre au programme de
suivre différents chemins suivant les circonstances.
1.1.2. Sélection ou exécution conditionnelle
Pour écrire des applications, il faut des techniques permettant de diriger le déroulement du programme
dans différentes directions, en fonction des circonstances rencontrées. Pour cela, nous devons disposer
d’instructions capables de tester une certaine condition et de modifier le comportement du programme en
conséquence, comme l’instruction conditionnelle if. Entrer les deux lignes suivantes :
>>> a = 150
>>> if (a > 100) :
…
Ø La première commande affecte la valeur 150 à la variable a.
Ø Lorsque vous finissez d’entrer la seconde ligne, vous constatez que le prompt >>> est remplacé par
un prompt constitué de trois points ou d’espace. Si votre éditeur ne le fait pas automatiquement, vous
devez effectuer une tabulation (ou entrer 4 espaces) avant d’entrer la ligne suivante, de manière à ce
que celle-ci soit indentée (c’est-à-dire en retrait) par rapport à la précédente. Votre écran sera comme
suit :
>>> a = 150
>>> if (a > 100):
... print "a dépasse la centaine"
...
Frappez encore Enter. Le programme s’exécute, et vous obtenez :
a dépasse la centaine
Recommencez le même exercice, mais avec a = 20 :
cette fois Python n’affiche plus rien.
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
2/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
Ø L’expression que vous avez placée entre parenthèses est une condition. L’instruction if permet de
tester la validité de cette condition.
Ø Si la condition est vraie, alors l’instruction que nous avons indentée après le (:) est exécutée.
Ø Si la condition est fausse, rien ne se passe.
Ø Notez que les parenthèses utilisées ici sont optionnelles sous Python, ils sont utilisés pour améliorer
la lisibilité.
Ø En ajoutant deux lignes comme indiqué ci-dessous : Veillez bien à ce que la quatrième ligne débute à
gauche (pas d’indentation), mais que la cinquième soit à indentée (de préférence avec un retrait
identique à celui de la troisième) :
>>> a = 20
>>> if (a > 100) :
... print "a dépasse la centaine"
... else :
... print "a ne dépasse pas cent"
...
Frappez Enter, le programme affiche cette fois :
a ne dépasse pas cent
Ø L’instruction else (sinon, en anglais) permet de programmer une exécution alternative, dans laquelle
le programme doit choisir entre deux possibilités. On peut faire mieux en utilisant aussi l’instruction
elif (contraction de else if ) :
>>> a = 0
>>> if a > 0 :
... print "a est positif"
... elif a < 0 :
... print "a est négatif"
... else:
... print "a est nul"
...
1.1.3. Opérateurs de comparaison
La condition évaluée après l’instruction if peut contenir les opérateurs de comparaison suivants :
x == y # x est égal à y
x != y # x est différent de y
x>y # x est plus grand que y
x<y # x est plus petit que y
x >= y # x est plus grand que, ou égal à y
x <= y # x est plus petit que, ou égal à y
Exemple : Donner un programme qui donne si (a) et pair ou impaire?
>>> a = 7
>>> if (a % 2 == 0):
... print "a est pair"
... print "parce que le reste de sa division par 2 est nul"
... else:
... print "a est impair"
...
L’opérateur de comparaison pour l’égalité de deux valeurs est constitué de deux signes égaux et non d’un
seul. Le signe égal utilisé seul est un opérateur d’affectation.
1.2. Instructions composées – blocs d’instructions
La construction utilisée avec l’instruction if est un exemple d’instruction composée. Sous Python, les
instructions composées ont toujours la même structure :
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
3/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
Ø Une ligne d’en-tête terminée par un double point,
Ø Suivie d’une ou plusieurs instructions indentées sous cette ligne d’en-tête.
Exemple :
Ligne d'en-tête:
première instruction du bloc
... ...
... ...
dernière instruction du bloc
Ø S’il y a plusieurs instructions indentées sous la ligne d’en-tête, elles doivent l’être exactement au
même niveau (comptez un décalage de 4 caractères).
Ø Ces instructions indentées constituent ce que nous appellerons désormais un bloc d’instructions.
Ø Un bloc d’instructions est une suite d’instructions formant un ensemble logique, qui n’est exécuté
que dans certaines conditions définies dans la ligne d’en-tête.
Dans l’exemple, les deux lignes d’instructions indentées sous la ligne contenant l’instruction if
constituent un même bloc logique : ces deux lignes ne sont exécutées – toutes les deux – que si la
condition testée avec l’instruction if est vraie, c’est-à-dire, si le reste de la division de a par 2 est nul.
1.3. Instructions imbriquées
Il est parfaitement possible d’imbriquer plusieurs instructions composées, de manière à réaliser des
structures de décision complexes.
1.3.1. Instruction composée : en-tête, double point, bloc d’instructions indenté
§ Les blocs d’instructions sont associés à une ligne
d’en-tête contenant une instruction bien spécifique
(if, elif, else, while, etc.) se terminant par un double
point.
§ Ils sont délimités par l’indentation : les lignes d’un
même bloc doivent être indentées de la même
manière (c’est-à-dire décalées vers la droite d’un
même nombre d’espaces). Le nombre d’espaces à
utiliser pour l’indentation est quelconque, mais la
plupart des programmeurs utilisent des multiples de
4.
§ Notez que le code du bloc 1 ne peut pas être écarté
de la marge de gauche (il n’est pas imbriqué).
1.4. Quelques règles de syntaxe Python
1.4.1. Les limites des instructions et des blocs sont définies par la mise en page
Dans de nombreux langages de programmation, il faut terminer chaque ligne d’instructions par un
caractère spécial (souvent le point-virgule). Sous Python, c’est le caractère de fin de ligne qui joue ce
rôle. On peut également terminer une ligne d’instructions par un commentaire. Avec Python, vous devez
utiliser les sauts à la ligne et l’indentation, mais en contrepartie vous n’avez pas à vous préoccuper
d’autres symboles délimiteurs de blocs.
1.4.2. Les espaces et les commentaires sont normalement ignorés
À part ceux qui servent à l’indentation, en début de ligne, les espaces placés à l’intérieur des instructions
et des expressions sont presque toujours ignorés (sauf s’ils font partie d’une chaîne de caractères).
Il en va de même pour les commentaires : ceux-ci commencent toujours par un caractère dièse (#) et
s’étendent jusqu’à la fin de la ligne courante.
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
4/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
1.5. Instructions répétitives
1.5.1. Réaffectation
Il est permis de réaffecter une nouvelle valeur à une même variable, autant de fois qu’on le souhaite.
L’effet d’une réaffectation est de remplacer l’ancienne valeur d’une variable par une nouvelle.
>>> altitude = 320
>>> print altitude
320
>>> altitude = 375
>>> print altitude
375
Ø Le symbole égal utilisé sous Python pour réaliser une affectation ne doit en pas être confondu avec
un symbole d’égalité tel qu’il est compris en mathématique.
Ø L’instruction altitude = 320 comme une affirmation d’égalité, mais ce n’en est pas une !
Ø L’égalité est commutative, alors que l’affectation ne l’est pas, en mathématique, les écritures a = 7 et
7 = a sont équivalentes, alors qu’une instruction de programmation telle que 375 = altitude serait
incorrecte.
Ø L’égalité est permanente, alors que l’affectation peut être remplacée.
Ø En programmation, une première instruction d’affectation peut rendre égales les valeurs de deux
variables, et une instruction ultérieure en changer ensuite l’une ou l’autre.
1.6. Répétitions en boucle – l’instruction while
L’une des tâches de programmateur est la répétition sans erreur de tâches identiques. Il existe des
méthodes pour programmer les tâches répétitives, l’une des plus fondamentales : la boucle construite à
partir de l’instruction while ou for.
Ø Le mot while signifie « tant que » en anglais.
Ø Cette instruction utilisée à la seconde ligne indique à Python qu’il lui faut répéter continuellement le
bloc d’instructions qui suit, tant que le contenu de la variable a reste inférieur à 7.
Ø Comme l’instruction if, l’instruction while amorce une instruction composée.
Ø Le double point à la fin de la ligne introduit le bloc d’instructions à répéter, lequel doit
obligatoirement se trouver en retrait.
Ø Toutes les instructions d’un même bloc doivent être indentées exactement au même niveau (c’est-à-
dire décalées à droite d’un même nombre d’espaces).
Entrer les commandes ci-dessous :
>>> a = 0
>>> while (a < 7): # (n'oubliez pas le double point !)
... a = a + 1 # (n'oubliez pas l'indentation !)
... print a
Frappez sur <Enter>.
Voici comment cela fonctionne :
Ø Avec while, Python commence par évaluer la validité de la condition fournie entre parenthèses.
Ø Si la condition se révèle fausse, alors tout le bloc qui suit est ignoré et l’exécution du programme se
termine.
Ø Si la condition est vraie, alors Python exécute tout le bloc d’instructions constituant le corps de la
boucle, c’est-à-dire : l’instruction a = a + 1 qui incrémente d’une unité le contenu de la variable a (ce
qui signifie que l’on affecte à la variable a une nouvelle valeur, qui est égale à la valeur précédente
augmentée d’une unité).
Ø L’instruction print qui affiche la valeur courante de la variable a,
Ø Lorsque ces deux instructions ont été exécutées, nous avons assisté à une première itération, et le
programme boucle, c’est-à-dire que l’exécution reprend à la ligne contenant l’instruction while.
Ø La condition qui s’y trouve est à nouveau évaluée, et ainsi de suite.
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
5/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
Ø Dans notre exemple, si la condition a < 7 est encore vraie, le corps de la boucle est exécuté une
nouvelle fois et le bouclage se poursuit.
1.7. Remarques
Ø La variable évaluée dans la condition doit exister au préalable, il faut qu’on lui ait déjà affecté au
moins une valeur.
Ø Si la condition est fausse au départ, le corps de la boucle n’est jamais exécuté.
Ø Si la condition reste toujours vraie, alors le corps de la boucle est répété indéfiniment.
Ø Il faut que la boucle contienne au moins une instruction qui change la valeur d’une variable
intervenant dans la condition de while, pour que cette condition puisse devenir fausse et la boucle se
terminer. Exemple de boucle sans fin (à éviter !) :
>>> n = 3
>>> while n < 5:
... print "hello !"
1.8. Élaboration de tables
Recommencez le premier exercice, mais avec la petite modification ci-dessous :
>>> a = 0
>>> while a < 12:
... a = a +1
... print a , a**2 , a**3
Vous devriez obtenir la liste des carrés et des cubes des nombres de 1 à 12. Notez au passage que
l’instruction print permet d’afficher plusieurs expressions l’une à la suite de l’autre sur la même ligne : il
suffit de les séparer par des virgules. Python insère automatiquement un espace entre les éléments
affichés.
1.9. Construction d’une suite mathématique
Le programme suivant permet d’afficher les dix premiers termes d’une suite. Il s’agit d’une suite de
nombres dont chaque terme est égal à la somme des deux termes qui le précèdent. Analysez ce
programme (qui utilise judicieusement l’affectation parallèle) et décrivez le mieux possible le rôle de
chacune des instructions.
>>> a, b, c = 1, 1, 1
>>> while c < 11 :
... print a,b,c
... a, b, c = b, a+b, c+1
Lorsque vous lancez l’exécution du programme, vous obtenez :
Lorsque vous examinez un problème de cette nature, vous devez considérer les lignes d’instruction, mais
surtout décortiquer les états successifs des différentes variables impliquées dans la boucle. Pour vous
aider à y voir plus clair, prenez la peine de dessiner sur papier une table d’états similaire.
1.10. Boucle for
Elle est utilisée comme la boucle while, le programme suivant donne un exemple de la boucle while :
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
6/7
Langage de programmation I Partie 4 : Programmation par Python, Opérateurs conditionnelle
>>> a = 0
>>> while (a < 7): # (n'oubliez pas le double point !)
... a = a + 1 # (n'oubliez pas l'indentation !)
... print(a, a**2, a**3)
On le modifiant avec la boucles for, on obtient le programme suivant :
a=0
for a in range (1, 7) :
a=a+1
print(a, a**2, a**3)
1.11. Exercices d’applications
Exercice 11 : Écrire un algorithme Signe qui retourne si deux nombres entiers donnés sont de
même signe ou non.
Exercice 12 : Écrire un algorithme Echange_Cond qui échange les contenus de deux données
numérique si elles sont de même signe, sinon il met la somme des deux dans la première
donnée et leur produit dans le second
Exercice 13 : Un magasin facture 0,3 dz les dix premières photocopies, 0,25 dz les vingt
suivantes et 0,2 dz au-delà. Rédiger un algorithme qui demande à l’utilisateur le nombre de
photocopies effectuées et qui affiche la facture correspondante.
Exercice 14 : Écrire un algorithme qui demande l’âge d’un enfant à l’utilisateur. Ensuite, il
l’informe de sa catégorie : Poussin de 6 à 7 ans, Pupille de 8 à 9 ans, Minime de 10 à 11 et
Cadet après 12 ans.
Exercice 15 : Écrire un algorithme permettant de saisir trois notes (sur 20) d’un étudiant,
calculant sa moyenne et affichant cette moyenne avec la mention : Très bien à partir de 16,
Bien entre 14 et 16, Assez bien entre 12 et 14, Passable entre 10 et 12, et Insuffisant en
dessous de 10.
Exercice 16 : Écrire un algorithme qui affiche la ou les solutions d’une équation du second
degré de la forme ax2 + bx + c. Pour calculer la racine carrée d’un nombre, nous utilisons la
fonction racine.
Exercice 17 : les habitants d’une ville paient l’impôt selon les règles suivantes :
· Les hommes de plus de 20 ans paient l’impôt
· Les femmes paient l’impôt si elles ont entre 18 et 35 ans
· Les autres ne paient pas d’impôt
Écrire un algorithme qui demande à l’utilisateur l’âge et le gendre d’un habitant et affiche se
celui-ci est imposable.
Exercice 18 : les produits vendus dans un magasin sont classés en trois catégories de point de
vue TVA : A=7%, B=20% et C=25%. Écrivez un algorithme prix qui calcule le prix TTC
d’un produit connaissant son prix hors taxe et sa catégorie.
Exercice 19 : Etant donné un mois, écrivez un algorithme Nbr_Jours qui retourne le nombre
des jours de ce mois.
Exercice 20 : Rédiger un algorithme qui demande deux nombres entiers et l’une des
opérateurs suivant : +, -, *, / puis effectue l’opération correspond et affiche le résultat de cette
opération.
Master Physique Médicale, Université Amar TELIDJI - Laghouat, Année 25/26
7/7