L'instruction Switch
Fait partie de la section Fondamentaux du Journey C++ de Coddy. Leçon 29 sur 74.
L’instruction switch ressemble à une instruction if à plusieurs voies. Au lieu d’évaluer une seule condition, elle vérifie la valeur d’une variable par rapport à plusieurs cas et exécute le code associé au cas correspondant.
Voici la structure de base d’une instruction switch :
switch (variable) {
case value1:
// Code à exécuter si variable est égal à value1
break;
case value2:
// Code à exécuter si variable est égal à value2
break;
// ... plus de cas
default:
// Code à exécuter si aucun cas ne correspond
}- Le mot-clé
switchest suivi, entre parenthèses, de la variable que vous souhaitez tester. - Chaque
casereprésente une valeur possible de la variable. - Le code contenu dans chaque
caseest exécuté si la variable correspond à la valeur de ce cas.
- L’instruction
breakest essentielle ; elle quitte leswitchaprès l’exécution d’un cas. Sans elle, l’exécution « tomberait » dans le cas suivant. - Le cas
defaultest facultatif et est exécuté si aucun autre cas ne correspond.
Voici un exemple :
int day = 3;
std::string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... cas pour les autres jours
default:
dayName = "Invalid day";
}Vous pouvez également regrouper plusieurs cases en une seule :
int day = 3;
std::string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... cas pour les autres jours
default:
dayName = "Invalid day";
}Défi
DébutantCrée un programme qui prend un numéro de month (1 pour janvier, 2 pour février, etc.) et affiche la season à laquelle il appartient. Utilise une instruction switch pour la logique.
Les seasons et les mois correspondants sont :
- Winter : décembre (12), janvier (1), février (2)
- Spring : mars (3), avril (4), mai (5)
- Summer : juin (6), juillet (7), août (8)
- Autumn : septembre (9), octobre (10), novembre (11)
- Invalid month : pour les autres options
Essayez vous-même
#include <iostream>
int main() {
int month;
std::cin >> month;
std::string season = "";
// Écrivez votre code ci-dessous
std::cout << season << std::endl;
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloIncrémentation / DécrémentationPost-incrémentation / Post-décrémentationRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Bases des entrées/sorties
Instruction coutInstruction cinSaisie de chaînes de caractèresRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux3Variables - Partie 2
Déclaration de typeConventions de nommageRécapitulatif - Initialisation des variablesType Casting - Partie 1Type Casting - Partie 26Prise de décision
L'instruction IfIf - ElseL'instruction SwitchOpérateur conditionnelRécapitulatif - If ElseIf - Else imbriquésEntraînez-vous par vous-même : Compilateur C++ en ligne