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
forcomienza coniigual a 0 y se incrementa en cada iteración. - Cuando
ies igual a 5, la sentenciabreakse ejecuta, saliendo del bucle. - El programa imprime los valores de
idesde 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
whilecontinúa ejecutándose mientrasisea menor que 10. - Cuando
ies igual a 5, la sentenciabreakse ejecuta, saliendo del bucle. - El programa imprime los valores de
idesde 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
forcomienza coniigual a 0 y se incrementa en cada iteración. - Cuando
ies igual a 5, la sentenciacontinuese ejecuta, saltando la iteración actual. - El programa imprime los valores de
idesde 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
whilecontinúa ejecutándose mientrasisea menor que 10. ise incrementa al inicio de cada iteración.- Cuando
ies igual a 5, la sentenciacontinuese ejecuta, saltando la iteración actual. - El programa imprime los valores de
idesde 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
