Está en la página 1de 2

Ejemplos de estructuras anidadas con switch:

Tanto SWITCH como IF son estructuras de control de flujo en la programación que se utilizan
para tomar decisiones y ejecutar diferentes acciones en función de las condiciones específicas.
Aunque ambos se utilizan para lo mismo, hay algunas diferencias clave entre ellos.

La principal diferencia entre SWITCH e IF es que SWITCH se utiliza cuando se tienen múltiples
casos posibles con resultados diferentes, mientras que IF se utiliza cuando se tienen
condiciones más complejas que no se pueden manejar fácilmente con SWITCH.

La ventaja de usar SWITCH en lugar de IFs anidados es que SWITCH puede ser más eficiente
en términos de rendimiento, especialmente cuando se tienen muchos casos posibles. SWITCH
evalúa la expresión una sola vez y luego busca la correspondencia entre los valores de los casos
y el valor de la expresión. En contraste, IFs anidados pueden ser menos eficientes en términos
de rendimiento, especialmente cuando se tienen muchos casos, ya que cada IF se evalúa en
orden y se debe realizar una comparación para cada uno.

Además, el uso de SWITCH puede hacer que el código sea más legible y fácil de entender en
comparación con IFs anidados. Esto se debe a que SWITCH es más conciso y permite al
programador ver de manera clara los diferentes casos posibles y los resultados asociados.

En resumen, la elección de usar SWITCH o IFs anidados depende de la complejidad de las


condiciones y la cantidad de casos posibles. Si se tiene una estructura simple de condiciones, es
mejor utilizar IFs anidados. Pero si se tienen muchas opciones y casos posibles, SWITCH puede
ser más eficiente y más fácil de leer y entender.

Ejemplos de estructuras anidadas con switch:

Ejemplo 1:

switch(x) {
case 1:
switch(y) {
case 0:
printf("error de división por cero");
break;
case 1:
x=1;
y=7;
}
break;
case 2:
...........
...........

/* si al entrar al switch la x tiene el valor de 1, entonces entraré en el


siguiente switch, y me comportaré como en un switch normal, tener en
cuenta que el break del switch(y) me sacaría fuera de este switch, por eso
encuentro, otro break, al final del case 1 del switch(x), que me saca fuera de
este otro switch. */

También podría gustarte