csharp-bucle-for

Qué es y cómo usar el bucle FOR en C#

Un bucle for es una estructura de control que repite un bloque de código un número determinado de veces. Es una de las estructuras de control más utilizadas en C#.

Sintaxis básica

La sintaxis de un bucle for en C# se compone de tres partes principales: inicialización, condición y actualización. Estas partes se especifican dentro de los paréntesis del bucle for y están separadas por punto y coma.

La estructura básica de un bucle for en C# es la siguiente:

for (inicialización; condición; actualización)
{
    // Instrucciones a ejecutar en cada iteración
}

Veamos cada una de las partes:

  • Inicialización: En esta parte del bucle, se establecen los valores iniciales de las variables que controlarán la ejecución del bucle (por lo general, se utiliza para inicializar un contador que se incrementará o decrementará en cada iteración)

  • Condición: La condición es una expresión booleana que se evalúa antes de cada iteración. Si la condición es verdadera, se ejecutan las instrucciones dentro del bucle. Si la condición es falsa, se sale del bucle y se continúa con la ejecución del programa

  • Actualización: En esta parte del bucle, se realiza una acción que modifica el valor de las variables que controlan el bucle (por lo general, se utiliza para incrementar o decrementar el contador)

  • Instrucciones a ejecutar: Aquí se especifican las instrucciones que se ejecutan en cada iteración. Estas instrucciones pueden ser cualquier tipo de código válido en C# (como asignaciones, cálculos, llamadas a métodos, et)

Ejemplo básico

Veamos un ejemplo sencillo donde se utiliza un bucle for para imprimir los números del 1 al 10:

for (int i = 1; i <= 10; i++)
{
    Console.WriteLine(i);
}

En este ejemplo:

  • La inicialización int i = 1 establece el valor inicial de i en 1.
  • La condición i <= 10 asegura que el bucle se ejecute mientras i sea menor o igual a 10.
  • La actualización i++ incrementa i en 1 después de cada iteración.
  • Dentro del bucle, utilizamos el método Console.WriteLine() para imprimir el valor actual de i en la consola.

El resultado es que se mostrarán los números de 1 a 10 en la pantalla.

Modificación del flujo del bucle

Salto de iteraciones con continue

La instrucción continue se utiliza para saltar la iteración actual y pasar directamente a la siguiente iteración del bucle.

for (int i = 0; i < 10; i++)
{
    if (i % 2 == 0)
    {
        continue; // Saltar los números pares
    }
    Console.WriteLine(i);
}

Interrupción del bucle con break

El uso de la instrucción break permite salir del bucle antes de que se cumpla la condición. Esto es útil en situaciones donde se encuentra un valor específico y no es necesario seguir iterando.

for (int i = 0; i < 10; i++)
{
    if (i == 5)
    {
        break;
    }
    Console.WriteLine(i);
}

Casos particulares

Es posible realizar casos más “originales” del bucle For. En general no es buena idea hacerlo. Pero os lo cuento, aunque solo sea para que si algún día lo veis, le echéis la bronca a alguien. 😉

Uso de variables externas

Es posible usar una variable declarada fuera del bucle for como la variable de control. Sin embargo, esto puede llevar a confusión y errores si no se gestiona adecuadamente:

int i = 0;
for (i = 0; i < 5; i++)
{
    Console.WriteLine(i);
}
Console.WriteLine($"Valor de i después del bucle: {i}");

En este caso, i conserva su valor después de que el bucle ha terminado, que será 5.

Declaraciones múltiples

En la sección de inicialización y actualización, se pueden incluir múltiples declaraciones separadas por comas. Esto es útil cuando se necesitan varias variables de control:

for (int i = 0, j = 10; i < j; i++, j--)
{
    Console.WriteLine($"i: {i}, j: {j}");
}

Ejemplos prácticos

Estos ejemplos tienen el propósito de mostrar cómo utilizar el bucle For. No significa que sea la mejor forma de resolver el problema que abordan. Lo normal es que haya alternativas mejores