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 con i igual a 0 y se incrementa en cada iteración.
  • Cuando i es igual a 5, la sentencia break 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 mientras i sea menor que 10.
  • Cuando i es igual a 5, la sentencia break 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 con i igual a 0 y se incrementa en cada iteración.
  • Cuando i es igual a 5, la sentencia continue 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 mientras i sea menor que 10.
  • i se incrementa al inicio de cada iteración.
  • Cuando i es igual a 5, la sentencia continue 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.

© Copyright 2024. Todos los derechos reservados