Les instructions conditionnelles permettent, en fonction du résultat de l’évaluation d’une expression booléenne, d’exécuter une certaine portion de code plutôt qu’une autre.
I. Nécessité des conditionnelles
Pouvoir exécuter alternativement un bloc d’instructions plutôt qu’un autre, en fonction d’un résultat intermédiaire, fait partie des éléments fondamentaux de tout langage de programmation et est nécessaire à la programmation de la plupart des calculs :
Selon que la condition mentionnée est vraie ou fausse, le programme exécutera les blocs A, B, D ou bien A, C, D.
II. Syntaxe des conditionnelles
1) Exemple
Nous illustrons nos propos avec la suite de Syracuse définie ainsi (le premier terme est un entier arbitraire) :
un+1={un2 si un est pair3un+1 sinon
On peut tester la parité d’un nombre en regardant le reste de la division par 2. Si n % 2 vaut 0, c’est que n est pair.
2) Conditions imbriquées
Il est possible d’imbriquer les conditions les unes dans les autres.
Exemple : La fonction suivante indique si l’année a est bissextile en renvoyant un booléen.
Rappel
Une année est bissextile si elle est divisible par 400, ou bien si elle est divisible par 4 sans être divisible par 100 : 2000 a été bissextile, 2032 le sera et 2100 ne le sera pas.
Pour éviter trop de blocs imbriqués qui nuisent à la lisibilité, on dispose en Javascript de else if et en Python du mot clé elif.
La construction précédente nous assure qu’un et un seul des quatre blocs (le premier pour lequel la condition sera vérifiée) est exécuté, ce qui est utile pour vérifier la justesse d’un programme. Voici une série de tests pour notre fonction :