Cómo usar la instrucción switch en C++

Cómo usar la instrucción switch en C++

La instrucción switch en C++ es una herramienta útil para controlar la ejecución de programas en función de una serie de posibles resultados. Al utilizar esta sentencia, puedes simplificar el código y hacer que sea más fácil de leer y entender. En este artículo vamos a explorar cómo utilizar la instrucción switch en C++ para optimizar el código y hacerlo más eficiente.

📋 Aquí podrás encontrar✍
  1. Sintaxis de la instrucción switch
  2. Usando switch en lugar de if-else
  3. Cómo utilizar la instrucción Switch en C++
  4. Ejemplos de casos de uso para la instrucción switch en C++
  5. Ejemplos de código de la instrucción switch
  6. Conclusión
  7. Preguntas frecuentes
    1. ¿Cuál es la diferencia entre la instrucción switch y la instrucción if-else en C++?
    2. ¿Puedo utilizar la instrucción switch con cadenas en C++?
    3. ¿Puedo tener varios casos iguales en un bloque switch?

Sintaxis de la instrucción switch

La sintaxis básica de la instrucción switch es la siguiente:


switch (expresión) {
  case constante1:
    código a ejecutar si la expresión es igual a constante1;
    break;
  case constante2:
    código a ejecutar si la expresión es igual a constante2;
    break;
  ...
  default:
    código a ejecutar si la expresión no coincide con ninguna constante;
    break;
}

La expresión es la variable o valor que se compara con las constantes. La sentencia case especifica una constante a comparar y el código a ejecutar si la expresión es igual a esa constante. El código asociado a cada constante debe estar entre llaves y terminar con una sentencia break. Si la expresión coincide con una constante, esa sección de código se ejecutará y el programa saltará fuera de la instrucción switch.

La sección default se ejecutará si la expresión no coincide con ninguna de las constantes especificadas en los casos anteriores. Este es un comportamiento importante a tener en cuenta si deseas controlar los resultados faĺshos de la operatoria.

Usando switch en lugar de if-else

Utilizar la sentencia switch te permite reemplazar varios bloques if-else encadenados con una sola instrucción. utilizandolo disminuiras la cantidad de sentencias repetidas y por ende el programa será más corto y fácil de entender.

Cómo utilizar la instrucción Switch en C++

Supongamos que queremos escribir un programa que muestre el día de la semana a partir de un valor numérico entero ingresado por el usuario. Podríamos hacer esto usando una serie de declaraciones if-else:


if (dia == 1)
  cout << "Lunes" << endl;
else if (dia == 2)
  cout << "Martes" << endl;
else if (dia == 3)
  cout << "Miércoles" << endl;
else if (dia == 4)
  cout << "Jueves" << endl;
else if (dia == 5)
  cout << "Viernes" << endl;
else if (dia == 6)
  cout << "Sábado" << endl;
else if (dia == 7)
  cout << "Domingo" << endl;
else
  cout << "El número ingresado no es un día válido." << endl;

Utilizando la sentencia switch podemos reemplazar todo el bloque anterior con la siguiente instrucción:


switch (dia) {
  case 1:
    cout << "Lunes" << endl;
    break;
  case 2:
    cout << "Martes" << endl;
    break;
  case 3:
    cout << "Miércoles" << endl;
    break;
  case 4:
    cout << "Jueves" << endl;
    break;
  case 5:
    cout << "Viernes" << endl;
    break;
  case 6:
    cout << "Sábado" << endl;
    break;
  case 7:
    cout << "Domingo" << endl;
    break;
  default:
    cout << "El número ingresado no es un día válido." << endl;
    break;
}

Visualmente esta alternativa es mucho más legible.

Ejemplos de casos de uso para la instrucción switch en C++

La instrucción switch se puede utilizar en una amplia variedad de situaciones. A continuación te mostramos algunas situaciones donde podrías utilizar la sentencia switch:

  • Para validar entradas de usuario
  • Para codificar control de flujo para diferentes tareas
  • Para la selección de opciones de menú y funciones
  • Para encadenar múltiples opciones de menú principal
  • Para controlar estados o valores de variables dependiendo de la acción del usuario

En cada uno de estos casos, la instrucción switch ayuda a simplificar y limpiar el código.

Ejemplos de código de la instrucción switch

Supongamos que necesitamos tomar diferentes decisiones dentro de una aplicación de acuerdo con la entrada de usuario. Para esto, podemos utilizar la instrucción switch de la siguiente manera:


// declaración de variable de entrada
char seleccion;

// solicitud de char de usuario
cout << "Ingrese una opción (a, b, c, d, e): ";
cin >> seleccion;

// toma de decisiones con switch
switch (seleccion) {
  case 'a':
    cout << "Has elegido la opción a" << endl;
    break;
  case 'b':
    cout << "Has elegido la opción b" << endl;
    break;
  case 'c':
    cout << "Has elegido la opción c" << endl;
    break;
  case 'd':
    cout << "Has elegido la opción d" << endl;
    break;
  case 'e':
    cout << "Has elegido la opción e" << endl;
    break;
  default:
    cout << "Opción inválida, por favor ingrese una opción válida." << endl;
    break;
}

En este caso, la instrucción switch se utiliza para determinar el código a ejecutar según el valor seleccionado por el usuario.

Conclusión

La instrucción switch en C++ es una herramienta poderosa para controlar el flujo del programa en diferentes situaciones. Al utilizar esta sentencia, puedes simplificar tu código, hacerlo más fácil de entender y optimizarlo. Aunque existen diferentes alternativas en C++ para realizar esto, la instrucción switch es una forma rápida y sencilla de manejar multiples opciones. Esperamos que esta guía te haya resultado útil.

Preguntas frecuentes

¿Cuál es la diferencia entre la instrucción switch y la instrucción if-else en C++?

La instrucción if-else es utilizada para controlar el flujo del programa según una condición verdadera o falsa. Por otro lado, la instrucción switch es usada para ejecutar bloques específicos de código según el valor de una variable o expresión. La instrucción switch es particularmente útil cuando se tienen varias opciones para elegir.

¿Puedo utilizar la instrucción switch con cadenas en C++?

Si. A partir de C++11, puedes utilizar la instrucción switch con cadenas. Para ello, debes utilizar la biblioteca de cadenas y establecer la opción -std=c++11 al compilar tu código.

¿Puedo tener varios casos iguales en un bloque switch?

Ningún caso puede ser igual a otro. Si se ingresan casos repetidos, el programa no se compilará.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir