C++ do… while bucle con ejemplos

¿Qué es el bucle do- while?

El bucle do- while itera una sección del programa C++ varias veces. En el ciclo do- while, la expresión de prueba se agrega en la parte inferior del ciclo. El cuerpo del bucle aparece antes de la expresión de prueba. Es por eso que el cuerpo del bucle debe ejecutarse por una vez, incluso cuando la expresión de prueba se evalúa como falsa en la primera prueba.

¿Cuándo usar un bucle do-while?

El bucle do- while debe usarse cuando el número de iteraciones no es fijo y el bucle debe ejecutarse al menos una vez. El Compilador de C ++ ejecuta el cuerpo del bucle primero antes de evaluar la condición. Eso significa que el bucle debe devolver un resultado. Este es el caso incluso cuando la condición de prueba se evalúa como falsa en la primera evaluación. Dado que el cuerpo del bucle ya se ejecutó, debe devolver el resultado.

Sintaxis

La sintaxis básica del bucle do while de C++ es la siguiente:

do{    
//code 
}while(condition);  

La condición es expresión de prueba. Debe ser verdadero para que se ejecute el bucle. { y } marcan el cuerpo del bucle do while. Viene antes de la condición. Por tanto, se ejecuta antes de la condición.

¿Cómo funciona el bucle do- while?

Bucle Do-While
C++ Hacer mientras diagrama de flujo

Explicación del diagrama de flujo:

  1. Inicio del bucle do while.
  2. El cuerpo del bucle do while.
  3. La expresión o condición de prueba que se va a evaluar.
  4. Si la expresión de prueba es verdadera, el compilador de C++ ejecutó el cuerpo del bucle do while.
  5. Si la expresión de prueba es falsa, el compilador de C++ ejecuta las declaraciones después del cuerpo del bucle.
  6. Declaraciones que vienen después del cuerpo del bucle.

ejemplo 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

Salida:

Bucle Do-While

Aquí hay una captura de pantalla del código:

Bucle Do-While

Explicación del código:

  1. Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
  2. Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
  3. Llamar a la función main() dentro de la cual se debe agregar la lógica del programa. El { marca el inicio del cuerpo de la función main().
  4. Un comentario. El compilador de C++ omitirá esto.
  5. Declarar una variable entera x y asignarle el valor 1.
  6. Creando un bucle do- while. El { marca el inicio del cuerpo del bucle.
  7. Para imprimir el valor de la variable x junto con otro texto en la consola. endl es una palabra clave de C++ que significa línea final.
  8. Aumentar el valor de x en 1 después de cada iteración.
  9. Fin del cuerpo del bucle. Se agregó la expresión de prueba al final del cuerpo del bucle. Prueba si el valor de x es menor que 5.
  10. La función main() debería devolver un valor si el programa funciona bien.
  11. Fin del cuerpo de la función main().

ejemplo 2

#include <iostream>
using namespace std;
int main()
{
	int num, sum = 0;
	do {

		cout << "Enter a number: ";

		cin >> num;

		sum += num;

	} while (num != 0);
	cout << "Sum is " << sum;

	return 0;
}

Salida:

Bucle Do-While

Aquí hay una captura de pantalla del código:

Bucle Do-While

Explicación del código:

  1. Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
  2. Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
  3. Llamar a la función main() dentro de la cual se debe agregar la lógica del programa.
  4. El { marca el inicio del cuerpo de la función main().
  5. Declarar dos variables enteras, num y sum. La suma variable se ha inicializado a 0.
  6. Creando un bucle do- while. El { marca el inicio del cuerpo del bucle.
  7. Imprimiendo el texto “Ingrese un número:” en la consola.
  8. Leer la entrada del usuario desde la consola y almacenar el valor en la variable num. El cin (entrada de consola) es una función que lee la entrada del usuario.
  9. Sumar el valor de num al valor de suma y almacenar el resultado en suma variable.
  10. El } marca el final del cuerpo del bucle. La expresión de prueba se agregó al final del cuerpo del bucle. Prueba si el valor ingresado por el usuario para asegurarse de que no sea 0. ¡! = no es igual al operador. Si el usuario ingresa un 0, el ciclo debería terminar.
  11. Imprimir el valor de la suma variable en la consola junto con otro texto.
  12. La función main() debería devolver un valor si el programa funciona bien.
  13. Fin del cuerpo de la función main().

Bucle anidado Do While

En C++, es posible crear un bucle do- while dentro de otro bucle do-whole. Esto da como resultado un bucle do- while anidado.

Sintaxis

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

La primera declaración do denota la parte do del ciclo do- while externo.

La segunda declaración do denota la parte do del ciclo interno do- while.

La primera declaración while denota la condición de prueba para el bucle interno.

La segunda declaración while denota la condición de prueba para el bucle externo.

Cómo funciona el bucle Nested Do While

El bucle anidado do while funciona de la siguiente manera:

Paso 1: La inicialización se ejecuta primero y una vez.

Paso 2: Las declaraciones (el do) se ejecutan una vez.

Paso 3: La expresión de prueba es evaluación mediante control de flujo.

Paso 4: Si es verdadero, se ejecuta el bucle interno.

Paso 5: Las declaraciones de actualización se actualizan.

Paso 6: El proceso se ejecuta repetidamente hasta que la expresión de prueba se vuelve falsa.

Paso 7: Cuando la expresión de prueba se vuelve falsa, se sale del bucle interno y el control salta al bucle externo.

Paso 8: La condición de prueba se evalúa nuevamente.

Paso 9: Si es verdadero, las declaraciones se ejecutan para devolver falso.

Paso 10: La ejecución de bucles se detiene y el control salta a declaraciones después del bucle.

Ejemplo

#include <iostream>  
using namespace std;
int main() {
	int a = 1;
	do {
		int b = 1;
		do {
			cout << a << "\n";
			b++;
		} while (b <= 3);
		a++;
	} while (a <= 3);
}

Salida:

Bucle anidado Do While

Aquí hay una captura de pantalla del código:

Bucle anidado Do While

Explicación del código:

  1. Incluyendo el archivo de encabezado iostream en nuestro código. Nos permitirá leer y escribir en la consola.
  2. Incluyendo el espacio de nombres estándar para usar sus clases y funciones sin llamarlo.
  3. Llamar a la función main() dentro de la cual se debe agregar la lógica del programa. El { marca el inicio del cuerpo de la función main().
  4. Declarar una variable entera a y asignarle el valor 1.
  5. Creando el bucle exterior do- while. El {marca el inicio del cuerpo del bucle exterior.
  6. Declarar una variable entera b y asignarle el valor 1.
  7. Creando el bucle interno do- while. El { marca el inicio del cuerpo del bucle interno.
  8. Para imprimir el valor de la variable a en la consola. "\n" es un carácter de nueva línea que mueve el cursor del mouse a la siguiente línea.
  9. Aumentar el valor de b en 1 después de cada iteración.
  10. Fin del cuerpo del bucle interior. Se agregó la expresión de prueba al final del cuerpo del bucle. Prueba si el valor de b es menor o igual a 5.
  11. Aumentar el valor de a en 1 después de cada iteración.
  12. Fin del cuerpo del bucle exterior. Se agregó la expresión de prueba al final del cuerpo del bucle. Comprueba si el valor de a es menor o igual a 3.
  13. Fin del cuerpo de la función main().

Resumen

  • El bucle do- while ejecuta una sección de código varias veces.
  • Debe usarse cuando el número de iteraciones no es fijo.
  • En el bucle do- while, el cuerpo del bucle va antes de la expresión de prueba.
  • El cuerpo del bucle se ejecuta al menos una vez, incluso si la expresión de prueba se vuelve falsa.
  • Este bucle debe usarse cuando el número de iteraciones no es fijo.
  • El bucle Do while puede ejecutarse cualquier cantidad de veces, siempre que la condición sea verdadera.
  • La condición se evalúa una vez después de cada iteración.
  • El resultado de la evaluación de la condición determina la acción a tomar.
  • Si la condición es verdadera, el bucle ejecuta el cuerpo.
  • La ejecución del bucle se detiene inmediatamente cuando la condición se evalúa como falsa.
  • Dado que el cuerpo del bucle do while ya se ha ejecutado, debe devolver el resultado.