En este tema, aprenderemos sobre dos importantes sentencias de control de flujo en C++: break
y continue
. Estas sentencias se utilizan para alterar el flujo normal de ejecución de los bucles y las estructuras de control.
Sentencia break
La sentencia break
se utiliza para salir de un bucle o una estructura de control antes de que se complete su ejecución normal. Cuando se encuentra una sentencia break
, el control del programa se transfiere inmediatamente a la siguiente instrucción después del bucle o la estructura de control.
Ejemplo de break
en un bucle for
#include <iostream> using namespace std; int main() { for (int i = 0; i < 10; i++) { if (i == 5) { break; // Salir del bucle cuando i es igual a 5 } cout << "i: " << i << endl; } cout << "Bucle terminado." << endl; return 0; }
Explicación:
- El bucle
for
comienza coni
igual a 0 y se incrementa en cada iteración. - Cuando
i
es igual a 5, la sentenciabreak
se ejecuta, saliendo del bucle. - El programa imprime los valores de
i
desde 0 hasta 4 y luego imprime "Bucle terminado."
Ejemplo de break
en un bucle while
#include <iostream> using namespace std; int main() { int i = 0; while (i < 10) { if (i == 5) { break; // Salir del bucle cuando i es igual a 5 } cout << "i: " << i << endl; i++; } cout << "Bucle terminado." << endl; return 0; }
Explicación:
- El bucle
while
continúa ejecutándose mientrasi
sea menor que 10. - Cuando
i
es igual a 5, la sentenciabreak
se ejecuta, saliendo del bucle. - El programa imprime los valores de
i
desde 0 hasta 4 y luego imprime "Bucle terminado."
Sentencia continue
La sentencia continue
se utiliza para saltar la iteración actual de un bucle y pasar a la siguiente iteración. Cuando se encuentra una sentencia continue
, el control del programa se transfiere inmediatamente al inicio del bucle para la siguiente iteración.
Ejemplo de continue
en un bucle for
#include <iostream> using namespace std; int main() { for (int i = 0; i < 10; i++) { if (i == 5) { continue; // Saltar la iteración cuando i es igual a 5 } cout << "i: " << i << endl; } cout << "Bucle terminado." << endl; return 0; }
Explicación:
- El bucle
for
comienza coni
igual a 0 y se incrementa en cada iteración. - Cuando
i
es igual a 5, la sentenciacontinue
se ejecuta, saltando la iteración actual. - El programa imprime los valores de
i
desde 0 hasta 9, excepto 5, y luego imprime "Bucle terminado."
Ejemplo de continue
en un bucle while
#include <iostream> using namespace std; int main() { int i = 0; while (i < 10) { i++; if (i == 5) { continue; // Saltar la iteración cuando i es igual a 5 } cout << "i: " << i << endl; } cout << "Bucle terminado." << endl; return 0; }
Explicación:
- El bucle
while
continúa ejecutándose mientrasi
sea menor que 10. i
se incrementa al inicio de cada iteración.- Cuando
i
es igual a 5, la sentenciacontinue
se ejecuta, saltando la iteración actual. - El programa imprime los valores de
i
desde 1 hasta 10, excepto 5, y luego imprime "Bucle terminado."
Ejercicios Prácticos
Ejercicio 1: Uso de break
Escribe un programa que lea números enteros del usuario y los sume. El programa debe detenerse y mostrar la suma total cuando el usuario ingrese un número negativo.
Solución:
#include <iostream> using namespace std; int main() { int num; int suma = 0; while (true) { cout << "Ingrese un número (negativo para terminar): "; cin >> num; if (num < 0) { break; // Salir del bucle si el número es negativo } suma += num; } cout << "La suma total es: " << suma << endl; return 0; }
Ejercicio 2: Uso de continue
Escribe un programa que imprima todos los números del 1 al 20, pero que salte los múltiplos de 3.
Solución:
#include <iostream> using namespace std; int main() { for (int i = 1; i <= 20; i++) { if (i % 3 == 0) { continue; // Saltar los múltiplos de 3 } cout << i << " "; } cout << endl; return 0; }
Conclusión
En esta sección, hemos aprendido sobre las sentencias break
y continue
en C++. La sentencia break
se utiliza para salir de un bucle o una estructura de control antes de que se complete su ejecución normal, mientras que la sentencia continue
se utiliza para saltar la iteración actual de un bucle y pasar a la siguiente iteración. Estas sentencias son herramientas poderosas para controlar el flujo de ejecución de los programas y pueden ser muy útiles en diversas situaciones.
En el próximo módulo, exploraremos las funciones en C++, comenzando con una introducción a las funciones y su importancia en la programación modular.
Curso de Programación en C++
Módulo 1: Introducción a C++
- Introducción a C++
- Configuración del Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
- Entrada y Salida
Módulo 2: Estructuras de Control
Módulo 3: Funciones
- Introducción a las Funciones
- Parámetros de Función y Tipos de Retorno
- Sobrecarga de Funciones
- Recursión
Módulo 4: Arreglos y Cadenas
- Introducción a los Arreglos
- Arreglos Multidimensionales
- Introducción a las Cadenas
- Manipulación de Cadenas
Módulo 5: Punteros y Referencias
- Introducción a los Punteros
- Aritmética de Punteros
- Punteros y Arreglos
- Referencias
- Asignación Dinámica de Memoria
Módulo 6: Programación Orientada a Objetos
- Introducción a la POO
- Clases y Objetos
- Constructores y Destructores
- Herencia
- Polimorfismo
- Encapsulación y Abstracción
Módulo 7: Temas Avanzados
- Plantillas
- Manejo de Excepciones
- Entrada/Salida de Archivos
- Biblioteca Estándar de Plantillas (STL)
- Expresiones Lambda
- Multihilo