Recommandé, 2024

Choix De L'Éditeur

Différence entre if-else et switch

“If-else” et “switch” sont tous deux des instructions de sélection. Les instructions de sélection transfèrent le flux du programme vers le bloc d'instructions particulier en fonction du fait que la condition est "vraie" ou "fausse". La différence fondamentale entre les instructions if-else et switch est que l'instruction if-else «sélectionne l'exécution des instructions en fonction de l'évaluation de l'expression dans les instructions if». Les instructions switch "sélectionnent l'exécution de l'instruction souvent basée sur une commande au clavier".

Tableau de comparaison

Base de comparaisonsinoncommutateur
De baseL'instruction à exécuter dépend de la sortie de l'expression à l'intérieur de l'instruction if.L'instruction qui sera exécutée est décidée par l'utilisateur.
ExpressionL'instruction if-else utilise plusieurs instructions pour plusieurs choix.L'instruction switch utilise une seule expression pour plusieurs choix.
EssaiL'instruction if-else teste l'égalité ainsi que l'expression logique.commutateur instruction test uniquement pour l'égalité.
ÉvaluationL'instruction if évalue le type entier, caractère, pointeur ou virgule flottante ou le type booléen.L'instruction switch n'évalue que les caractères ou les valeurs entières.
Séquence d'exécutionSoit si instruction sera exécutée, soit l'instruction est exécutée.instruction switch exécuter un cas après l'autre jusqu'à ce qu'une instruction break soit affichée ou que la fin de l'instruction switch soit atteinte.
Exécution par défautSi la condition à l'intérieur de if statement est fausse, alors l'instruction else est exécutée par défaut.Si la condition dans les instructions switch ne correspond à aucun cas, les instructions par défaut sont exécutées si elles sont créées.
ÉditionIl est difficile d’éditer l’instruction if-else si l’instruction imbriquée if-else est utilisée.Il est facile d’éditer les cas de commutation car ils sont facilement reconnus.

Définition de if-else

Les déclarations if-else appartiennent aux déclarations de sélection dans la POO. La forme générale des déclarations if-else est la suivante

 if (expression) {déclaration (s)} else {déclaration (s)} 

où "si" et "sinon" sont les mots-clés, et les déclarations peuvent être une déclaration unique ou un bloc d'instructions. L'expression est évaluée comme étant "vraie" pour toute valeur autre que zéro et pour zéro, comme étant "fausse".
L'expression dans l'instruction if peut contenir un entier, un caractère, un pointeur, une virgule flottante ou un type booléen. L'instruction else est facultative dans une instruction if-else. Si l'expression renvoie true, les instructions inside si statement sont exécutées et si elle renvoie false, elles sont exécutées et, dans le cas où une instruction else est non créée, aucune action n'est exécutée et le contrôle du programme saute. d'une déclaration if-else.

Permet de comprendre avec un exemple.

 int i = 45, j = 34; if (i == 45 & j == 34) {cout << "i jyou choisit le chocolat noir"; Pause; cas 2: cout << "vous choisissez des bonbons"; Pause; cas 3: cout << "vous choisissez Lollypop"; Pause; . . cout par défaut << "vous ne choisissez rien"; } 

Ici, la valeur de «i» décidera quel cas doit être exécuté, si un utilisateur donne la valeur de «i» autre que 1, 2 ou 3, alors le cas par défaut est exécuté.

Différences clés entre if-else et switch

  1. Expression à l'intérieur de if if décide s'il faut exécuter les instructions à l'intérieur de block ou under block. D'autre part, l'expression à l'intérieur de l'instruction switch détermine le cas à exécuter.
  2. Vous pouvez avoir plusieurs instructions if pour un choix multiple d'instructions. En switch, vous n'avez qu'une seule expression pour les choix multiples.
  3. L'instruction if-esle vérifie l'égalité et l'expression logique. D'autre part, basculez les contrôles uniquement pour l'égalité.
  4. L'instruction if évalue le type entier, caractère, pointeur ou type à virgule flottante ou type booléen. Par ailleurs, l'instruction switch n'évalue qu'un caractère ou un type de données entier.
  5. La séquence d’exécution ressemble à l’une des instructions sous block si celle-ci est exécutée ou les instructions définies sous l’autre instruction block. D'autre part, l'expression dans l'instruction switch détermine le cas à exécuter et si vous n'appliquez pas d'instruction break après chaque cas, elle sera exécutée jusqu'à la fin de l'instruction switch.
  6. Si expression à l'intérieur si le résultat est faux, l'instruction à l'intérieur d'un autre bloc sera exécutée. Si l'expression à l'intérieur de l'instruction switch s'avère être fausse, les instructions par défaut sont exécutées.
  7. Il est difficile d’éditer les instructions if-else car il est fastidieux de savoir où la correction est nécessaire. D'autre part, il est facile d'éditer les instructions switch car elles sont faciles à tracer.

Conclusion:

L'instruction switch est facile à modifier car elle a créé des cas distincts pour différentes instructions, tandis que dans les instructions imbriquées if-else, il devient difficile d'identifier les instructions à modifier.

Top