Cómo funciona la instrucción do while en C#

Estrada Web Group
Estrada Web Group
Cómo funciona la instrucción do while en C#

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.

Compartir artículo:

Más artículos geniales

¿Qué son los arrays multidimensionales en C#?

¿Qué son los arrays multidimensionales en C#?

En este artículo aprenderás sobre los arrays multidimensionales en C#, su funcionamiento, ventajas y desventajas, así como también cómo crear, acceder y recorrer arrays multidimensionales en tu código

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla