
Resumen: en este tutorial, aprenderás a usar la declaración do while de C# para ejecutar un bloque de código repetidamente siempre que una condición sea verdadera.
¿Cómo funciona el do while?
La instrucción do while
de C#
ejecuta una o más iteraciones siempre que una condición sea verdadera.
A continuación, se muestra la sintaxis de la sentencia do while
:
do
{
// statement
} while (expression);
A diferencia de la instrucción while, la instrucción do while verifica la expresión al final de cada iteración. Por lo tanto, se llama bucle de post-prueba.
La instrucción do while
siempre ejecutará la primera iteración independientemente del resultado de la expresión. Y ejecutará el bloque repetidamente siempre que la expresión sea verdadera.
Dentro del ciclo, debes cambiar algunas variables para que la expresión sea falsa en algún momento, de modo que el ciclo termine después de algunas iteraciones. De lo contrario, tendrás un bucle infinito.
¿Qué es do while con ejemplos?
Tomemos algunos ejemplos del uso de la instrucción para comprender do while
.
1) Ejemplo simple del uso de la instrucción C# do while
El siguiente ejemplo muestra cómo usar la instrucción do while
para imprimir cinco números del 1
al 5
:
int counter = 0;
do
{
counter++;
Console.WriteLine(counter);
} while (counter < 5);
Resultado:
1
2
3
4
5
Cómo funciona.
Primero, declara la variable counter e inicialízala en 0
.
En segundo lugar, aumenta counter en uno e imprímelo dentro del do while
. Repite este paso siempre que el contador sea menor que 5
. Dado que el counter comienza en uno, la instrucción do while
se ejecuta exactamente cinco veces.
2) Usar la instrucción do while para crear un juego de adivinanzas
A continuación, se ilustra cómo usar la declaración do while
para crear el juego de adivinar el número. El programa generará un número aleatorio entre 1
y 10
.
Y tendrás un máximo de 4 turnos. Si su conjetura es mayor o menor que un número secreto, recibirás una pista:
int guess = 0, yourNumber;
string hint;
// Obtener un número aleatorio entre 1 y 10
int secretNumber = (new Random()).Next(1, 10);
Console.WriteLine("Elige un número entre 1 y 10. Tendrás 4 turnos.");
do
{
guess++;
// Obtener la entrada del usuario
yourNumber = Convert.ToInt32(Console.ReadLine());
Console.Write($"Turno #{guess}. Tu número: {yourNumber}");
// Verifica el número de entrada con el número secreto
if (yourNumber < secretNumber)
{
hint = $"tu respuesta: {yourNumber}, es demasiado bajo.";
}
else if (yourNumber > secretNumber)
{
hint = $"Tu respuesta: {yourNumber}, es demasiado alto.";
}
else
{
hint = $"¡Bingo! Te tomó {guess} turnos para adivinar el número secreto {secretNumber}.";
}
Console.WriteLine(hint);
} while (guess < 4 && yourNumber != secretNumber);
if (yourNumber != secretNumber)
{
Console.WriteLine("¡Ups! perdiste.");
}
A continuación, se muestra una prueba:
Elige un número entre 1 y 10. Tendrás 4 turnos.
Turno #1. Tu número: 5
Tu respuesta: 5, es demasiado bajo.
Turno #2. Tu número: 6
Tu respuesta: 6, es demasiado bajo.
Turno #3. Tu número: 7
Tu respuesta: 7, es demasiado bajo.
Turno #4. Tu número: 8
¡Bingo! Te tomó 4 turnos para adivinar el número secreto 8.
Resumen
Use la declaración do while
para ejecutar un bloque de código repetidamente siempre que una condición sea verdadera.