Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Instruction Switch | Introduction aux Instructions Conditionnelles
Instructions Conditionnelles en C++
course content

Contenu du cours

Instructions Conditionnelles en C++

Instructions Conditionnelles en C++

1. Introduction aux Instructions Conditionnelles
2. Pratique du Flux de Contrôle Conditionnel
3. Sujets Avancés

book
Instruction Switch

L'instruction switch est également une des structures de contrôle qui simplifie la prise de décision dans vos programmes. Elle offre un moyen efficace d'évaluer une expression et d'exécuter différents blocs de code en fonction de la valeur de cette expression. Cela peut être particulièrement utile lorsqu'on traite un grand nombre de conditions de branchement.

Elle est principalement conçue pour fonctionner avec des valeurs numériques, telles que les entiers (int) et les caractères (char).

h

switch

copy
12345678910111213141516
switch (expression) { case value1: // Code to execute when expression matches value1 break; case value2: // Code to execute when expression matches value2 break; // More cases can be added as needed // Code to execute when expression matches valueN default: // Code to execute when none of the case labels match the expression }
  • L'expression est évaluée une fois, et le programme saute au case approprié en fonction de la valeur de l'expression;

  • Chaque case représente une valeur spécifique ou un ensemble de valeurs que l'expression pourrait correspondre;

  • L'instruction break est utilisée pour sortir du bloc switch après que le code pour un cas particulier a été exécuté;

  • Le default est optionnel et est utilisé lorsque aucun des cas spécifiés ne correspond à l'expression. Il agit comme une option de secours.

Supposons que vous possédiez un restaurant et que vous souhaitiez fournir un menu basé sur des codes numériques listés. Voici la représentation en code des éléments du menu.

cpp

main

copy
1234567891011121314151617181920212223242526
#include <iostream> int main() { // try to change the value int menu_number = 1; switch (menu_number) { case 1: std::cout << "Pizza" << std::endl; break; case 2: std::cout << "Burger with fries" << std::endl; break; case 3: std::cout << "Pasta with meatballs" << std::endl; break; default: std::cout << "We don`t have this in our menu" << std::endl; break; } }

Oui, vous pouvez réaliser cela avec une simple instruction if, et cela ressemblerait à ceci :

cpp

main

copy
123456789101112131415161718192021222324
#include <iostream> int main() { // try to change the value int menu_number = 1; if (menu_number == 1) { std::cout << "Pizza" << std::endl; } else if (menu_number == 2) { std::cout << "Burger with fries" << std::endl; } else if (menu_number == 3) { std::cout << "Pasta with meatballs" << std::endl; } else { std::cout << "We don`t have this in our menu" << std::endl; } }

Cela fonctionnera de la même manière et comme prévu, mais il est généralement préférable d'utiliser une instruction switch car elle offre une manière plus claire, plus lisible et, surtout, plus facile à maintenir et extensible de gérer ce type de flux de contrôle.

Omettre le mot-clé break dans une instruction switch peut entraîner un comportement inattendu du programme, car le code continuera à s'exécuter dans les cas suivants. Cependant, omettre intentionnellement break peut être utilisé pour gérer plusieurs cas dans le même bloc de code. Cette approche, connue sous le nom de fall-through, vous permet de gérer des cas connexes ensemble.

cpp

main

copy
12345678910111213141516171819202122
#include <iostream> int main() { // change the number and look how it affect the output int number = 3; switch (number) { case 1: std::cout << '1' << std::endl; case 2: std::cout << '2' << std::endl; case 3: std::cout << '3' << std::endl; case 4: std::cout << '4' << std::endl; case 5: std::cout << '5' << std::endl; break; } }
Tâche

Swipe to start coding

  1. Écrivez une instruction switch qui affiche le jour de la semaine correspondant en fonction de la valeur de day_of_week.
  2. Si la valeur n'est pas un jour valide, affichez The day doesn't exist dans la console.

Solution

cpp

solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 6
toggle bottom row

book
Instruction Switch

L'instruction switch est également une des structures de contrôle qui simplifie la prise de décision dans vos programmes. Elle offre un moyen efficace d'évaluer une expression et d'exécuter différents blocs de code en fonction de la valeur de cette expression. Cela peut être particulièrement utile lorsqu'on traite un grand nombre de conditions de branchement.

Elle est principalement conçue pour fonctionner avec des valeurs numériques, telles que les entiers (int) et les caractères (char).

h

switch

copy
12345678910111213141516
switch (expression) { case value1: // Code to execute when expression matches value1 break; case value2: // Code to execute when expression matches value2 break; // More cases can be added as needed // Code to execute when expression matches valueN default: // Code to execute when none of the case labels match the expression }
  • L'expression est évaluée une fois, et le programme saute au case approprié en fonction de la valeur de l'expression;

  • Chaque case représente une valeur spécifique ou un ensemble de valeurs que l'expression pourrait correspondre;

  • L'instruction break est utilisée pour sortir du bloc switch après que le code pour un cas particulier a été exécuté;

  • Le default est optionnel et est utilisé lorsque aucun des cas spécifiés ne correspond à l'expression. Il agit comme une option de secours.

Supposons que vous possédiez un restaurant et que vous souhaitiez fournir un menu basé sur des codes numériques listés. Voici la représentation en code des éléments du menu.

cpp

main

copy
1234567891011121314151617181920212223242526
#include <iostream> int main() { // try to change the value int menu_number = 1; switch (menu_number) { case 1: std::cout << "Pizza" << std::endl; break; case 2: std::cout << "Burger with fries" << std::endl; break; case 3: std::cout << "Pasta with meatballs" << std::endl; break; default: std::cout << "We don`t have this in our menu" << std::endl; break; } }

Oui, vous pouvez réaliser cela avec une simple instruction if, et cela ressemblerait à ceci :

cpp

main

copy
123456789101112131415161718192021222324
#include <iostream> int main() { // try to change the value int menu_number = 1; if (menu_number == 1) { std::cout << "Pizza" << std::endl; } else if (menu_number == 2) { std::cout << "Burger with fries" << std::endl; } else if (menu_number == 3) { std::cout << "Pasta with meatballs" << std::endl; } else { std::cout << "We don`t have this in our menu" << std::endl; } }

Cela fonctionnera de la même manière et comme prévu, mais il est généralement préférable d'utiliser une instruction switch car elle offre une manière plus claire, plus lisible et, surtout, plus facile à maintenir et extensible de gérer ce type de flux de contrôle.

Omettre le mot-clé break dans une instruction switch peut entraîner un comportement inattendu du programme, car le code continuera à s'exécuter dans les cas suivants. Cependant, omettre intentionnellement break peut être utilisé pour gérer plusieurs cas dans le même bloc de code. Cette approche, connue sous le nom de fall-through, vous permet de gérer des cas connexes ensemble.

cpp

main

copy
12345678910111213141516171819202122
#include <iostream> int main() { // change the number and look how it affect the output int number = 3; switch (number) { case 1: std::cout << '1' << std::endl; case 2: std::cout << '2' << std::endl; case 3: std::cout << '3' << std::endl; case 4: std::cout << '4' << std::endl; case 5: std::cout << '5' << std::endl; break; } }
Tâche

Swipe to start coding

  1. Écrivez une instruction switch qui affiche le jour de la semaine correspondant en fonction de la valeur de day_of_week.
  2. Si la valeur n'est pas un jour valide, affichez The day doesn't exist dans la console.

Solution

cpp

solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 6
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt