Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Machine Learning et Deep Learning
  3. Les conditions
Extrait - Machine Learning et Deep Learning Des bases à la conception avancée d'algorithmes (exemples en Python et en JavaScript)
Extraits du livre
Machine Learning et Deep Learning Des bases à la conception avancée d'algorithmes (exemples en Python et en JavaScript)
1 avis
Revenir à la page d'achat du livre

Les conditions

Un booléen sinon rien

Les structures conditionnelles font partie des briques de l’algorithmique. Comme leur nom l’indique, elles permettent d’appliquer des conditions à un processus. Si une condition est remplie, on effectue une tâche donnée. Sinon, on fait autre chose. Tout le code n’est donc pas exécuté systématiquement. Seule la partie validant la condition est réalisée. Comment le programme détermine-t-il la tâche à effectuer ?

Comme vu dans le chapitre. Les opérateurs, un opérateur de comparaison et un opérateur logique renvoient un booléen. Voici quelques exemples :

  • 1 > 3 donne False.

  • "hello" == "hello" donne True.

  • 1 OU 0 donne 1, c’est-à-dire True.

  • 0 ET 1 donne 0, c’est-à-dire False.

Les structures conditionnelles appliquent une action donnée en fonction d’un résultat booléen, comme nous le faisons dans la vie quotidienne dans les cas suivants :

  • S’il pleut, alors nous prenons un parapluie, sinon nous ne prenons pas de parapluie. 

  • S’il y a des bouchons, alors nous changeons d’itinéraire.

Un organigramme de programmation (ou algorigramme) peut être utilisé pour représenter graphiquement de façon normalisée l’enchaînement des opérations et des décisions effectuées...

Écrire des structures conditionnelles

Voici la structure d’une condition  :

Début : 
Si booléen alors 
       Instructions 
Sinon 
       Autres instructions 
Fin 

Ce qui se trouve après le Si est appelé expression. Si l’expression (ici un booléen) renvoie True, les instructions sous le Si sont exécutées. Si elle renvoie False, alors ce sont les instructions du Sinon qui sont exécutées. Si les deux instructions (Si et Sinon) renvoient True, alors ce sont les instructions du premier bloc d’expression True, c’est-à-dire le bloc du Si, qui sont exécutées.

Reprenons l’algorithme du chapitre Les variables et modifions-le un peu pour indiquer si la personne est majeure ou mineure.

Algorithme : Majeur ou mineur ? 
Variables : 
       entier : anneeActuelle, anneeDeNaissance 
       chaine : prenom 
Début : 
       Afficher “Indique ton prénom, l'année actuelle et ton année  
de naissance et je te dirai si tu es majeur ou mineur” 
       Saisir anneeActuelle, anneeDeNaissance, prenom 
       age  anneeActuelle - anneeDeNaissance 
       Si age < 18 
              majeurOuMineur  “mineur” 
       Sinon 
              majeurOuMineur  “majeur” 
       Afficher “Bonjour”, prenom, “, puisque nous sommes en”,  
anneeActuelle, “ et que tu es né(e) en”, anneeDeNaissance, “tu as”,  
age, “ce qui signifie que tu es”, majeurOuMineur 
Fin 

Ici, on initialise trois variables : anneeActuelle, anneeDeNaissance, prenom. Puis on détermine la valeur d’une variable age par le calcul. Ensuite, on entre dans une structure conditionnelle ayant deux parties : Si et Sinon....

Les conditions imbriquées

Très souvent, les programmes nécessitent des structures conditionnelles imbriquées. Il s’agit de conditions dans une condition ; en quelque sorte, de sous-conditions.

Reprenons l’algorithme Majeur, mineur ou tout juste majeur, et ajoutons les sous-catégories bébé, enfant et adolescent dans mineur, et la sous-catégorie retraité dans majeur :

Algorithme : Majeur, tout juste majeur, retraité, mineur, adolescent,  
enfant, bébé  
Variables : 
       entier :  anneeActuelle, anneeDeNaissance 
       chaine : prenom 
Début : 
       Afficher “Indique ton prénom, l'année actuelle et ton année de  
naissance et je te dirai à quelle catégorie tu appartiens 
       Saisir anneeActuelle, anneeDeNaissance, prenom 
       age  anneeActuelle - anneeDeNaissance 
       Si age < 18 ET age > 0 
              Si age > 0 ET age <= 3 
                     majeurOuMineur  “bébé” 
              Sinon Si age > 3 ET age <= 12 
                     majeurOuMineur...

Des conditions avec des choix prédéfinis

Un bon programmeur est partisan du moindre effort.

Il s’agit ici d’indiquer à un programme des instructions à réaliser pour une grande liste de cas de figure. Vous pouvez le faire en créant autant de conditions Si et Sinon Si que nécessaire. Mais vous remarquerez pas mal de redondances et vous augmenterez le risque de vous tromper. C’est là qu’intervient la structure conditionnelle Suivant cas faire :

Début :  
    Suivant cas expression1 : faire instructions1 
    Suivant cas expression2 : faire instructions2 
    Suivant cas expression3 : faire instructions3 
    Suivant cas expression4 : faire instructions4 
Fin 

En guise d’exemple, écrivons un programme qui indique quel jour nous sommes, en utilisant la structure Suivant cas faire en JavaScript :

<!DOCTYPE html> 
<html> 
<body> 
 
<p id="demo"></p> 
 
<script> 
var day; 
switch (new Date().getDay()) { 
  case 0: 
    day = "Sunday"; 
    break; 
  case 1: 
    day = "Monday"; 
    break; 
  case 2: 
    day = "Tuesday"; 
    break; 
  case...