• 4 heures
  • Facile

Ce cours est visible gratuitement en ligne.

Ce cours est en vidéo.

Vous pouvez obtenir un certificat de réussite à l'issue de ce cours.

J'ai tout compris !

Mis à jour le 17/01/2018

Découvrez les structures conditionnelles

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

 

Revenons à notre programme et imaginons un scénario que nous n'avons pas vu jusqu'à maintenant : le vote blanc. Que faire si un électeur ne met aucune mention ? Nous devrions les comptabiliser. Or notre système ne le permet actuellement pas.

Si... Sinon...

Nous allons appeler à la rescousse une nouvelle structure qui s'appelle la structure conditionnelle et que nous avons déjà un peu vue précédemment. Nous l'utilisons tous les jours. Par exemple : si j'ai bien l'électricité chez moi, je pourrais prendre une douche chaude !

En quoi est-ce intéressant pour nous ? Tout simplement car nous allons dire à notre algorithme : si le vote est une mention existante, dans ce cas exécute la fonction. Sinon, ajoute 1 à la colonne "vote blanc".

si mention_existante?
    tant qu'il y a des votes : 
        ajoute_un_vote
sinon
    ajoute_un_vote_blanc

Un exemple en Python :

if mention_exists:
    while len(votes) > 0:
        ajoute_un_vote()
        enleve_un_vote_de_la_liste()
else:
    ajoute_un_vote_blanc()

Switch

Et si nous avions plusieurs conditions ? En effet, qu'un électeur remplisse mal un bulletin ne signifie pas qu'il vote blanc. Il peut très bien avoir mal écrit et notre algorithme a mal compris la réponse. Ou bien il a ajouté un nouveau candidat qu'il considère bien meilleur que les autres. Que faire dans tous ces cas ?

Vous pouvez ajouter plusieurs conditions à la suite dans un bloc "if" pour les évaluer les unes à la suite des autres. Nous pourrions par exemple dire :

Si (mention existante ?)
  ajoute la mention dans le tableau
Sinon, si (vote illisible ?)
  marquer que le vote est illisible
  demander un second avis
Sinon
  ajoute un à la colonne "vote blanc"

Mais je ne suis toujours pas satisfaite. Je veux vraiment vérifier que le vote est bien blanc avant de l'ajouter. Ce n'est vraiment qu'en dernier recours que je veux faire une seconde lecture. Je vais donc avoir plusieurs conditions possibles. Je pourrais écrire ceci :

Si (mention existante ?)
  ajoute la mention dans le tableau
Sinon, si (vote illisible ?)
  marquer que le vote est illisible
  demander un second avis
Sinon, si (vote blanc ?)
  marquer que le vote est blanc
  ajouter un à la colonne "vote blanc"
Sinon
  demander un second avis

Mais en programmation nous préférons une autre syntaxe : le switch.

Un switch commence par évaluer l'expression qui lui est donnée puis il va aiguiller notre programme vers le cas correspondant.

Ainsi, nous pourrions écrire :

switch mention
  cas "existe ?"
    ajoute la mention dans le tableau
  cas "vote illisible ?"
      marquer que le vote est illisible
      demander un second avis
  cas "vote blanc ?"
    marquer que le vote est blanc
    ajouter un à la colonne "vote blanc"
  autre cas
    demander un second avis

Entraînez-vous !

Avant de passer à l'étape suivante, prenez quelques minutes pour vous entraîner ! Sortez vivant d'un labyrinthe en créant la structure conditionnelle adéquate.

Bien, notre programme commence à voir le jour ! Nous allons le mettre de côté pendant plus d'une partie, le temps que nous passions en revue les types de données les plus fréquents lorsque l'on parle d'algorithmique.

Quand nous reviendrons à notre programme, nous pourrons alors sélectionner les plus adaptés pour le coder en vrai ! Alors accrochez-vous, nous nous détournons un petit moment de notre algorithme phare pour mieux le servir…

 

A tout de suite !

Exemple de certificat de réussite
Exemple de certificat de réussite