C # para bucle (con ejemplos)

En este artículo, aprenderemos sobre el bucle for en C # y las diferentes formas de usarlos en un programa.

En programación, a menudo se desea ejecutar cierto bloque de declaraciones durante un número específico de veces. Una posible solución será escribir esas declaraciones el número de veces requerido. Sin embargo, es posible que el número de repeticiones no se conozca de antemano (durante el tiempo de compilación) o que sea lo suficientemente grande (digamos 10.000).

La mejor solución a este problema es el bucle. Los bucles se utilizan en programación para ejecutar repetidamente un determinado bloque de declaraciones hasta que se cumpla alguna condición.

En este artículo, veremos el bucle for en C #.

C # para bucle

La palabra clave for se utiliza para crear un bucle for en C #. La sintaxis de for loop es:

 for (inicialización; condición; iterador) (// cuerpo del bucle for) 

¿Cómo funciona el bucle for?

  1. C # para el bucle tiene tres estados: initialization, conditiony iterator.
  2. La initializationinstrucción se ejecuta al principio y solo una vez. Aquí, la variable generalmente se declara e inicializa.
  3. Luego, conditionse evalúa. El conditiones una expresión booleana, es decir, se vuelve ya sea trueo false.
  4. Si conditionse evalúa para true:
    1. Se ejecutan las sentencias dentro del ciclo for.
    2. Luego, iteratorse ejecuta la instrucción que generalmente cambia el valor de la variable inicializada.
    3. Nuevamente conditionse evalúa.
    4. El proceso continúa hasta que conditionse evalúa false.
  5. Si conditionse evalúa como false, el ciclo for termina.

para diagrama de flujo de bucle

Ejemplo 1: C # para bucle

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1; i<=5; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) ) 

Cuando ejecutamos el programa, la salida será:

 C # Bucle for: Iteración 1 C # Bucle for: Iteración 2 C # Bucle for: Iteración 3 C # Bucle for: Iteración 4 C # Bucle for: Iteración 5

En este programa,

  • initialization declaración es int i=1
  • condition declaración es i<=5
  • iterator declaración es i++

Cuando el programa se ejecuta,

  • Primero, la variable i se declara y se inicializa a 1.
  • Luego, i<=5se evalúa la condición ( ).
  • Dado que la condición vuelve true, el programa ejecuta el cuerpo del ciclo for. Imprime la línea dada con Iteración 1 (Iteración simplemente significa repetición).
  • Ahora, i++se evalúa el iterador ( ). Esto incrementa el valor de i a 2.
  • La condición ( i<=5) se evalúa de nuevo y al final, el valor de i se incrementa en 1. La condición se evaluará truelas primeras 5 veces.
  • Cuando el valor de i sea 6 y la condición sea false, el ciclo terminará.

Ejemplo 2: ciclo for para calcular la suma de los primeros n números naturales

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int n = 5,sum = 0; for (int i=1; i<=n; i++) ( // sum = sum + i; sum += i; ) Console.WriteLine("Sum of first (0) natural numbers = (1)", n, sum); ) ) ) 

Cuando ejecutamos el programa, la salida será:

 Suma de los primeros 5 números naturales = 15

Aquí, el valor de suma yn se inicializan en 0 y 5 respectivamente. La variable de iteración i se inicializa a 1 y se incrementa en cada iteración.

Dentro del ciclo for, el valor de la suma se incrementa en i, es decir sum = sum + i. El ciclo for continúa hasta que i es menor o igual que n (entrada del usuario).

Veamos qué sucede en el programa dado en cada iteración.

Inicialmente, i = 1, suma = 0 y n = 3

Para pasos de ejecución de bucle
Iteración Valor de i yo <= 5 Valor de la suma
1 1 cierto 0 + 1 = 1
2 2 cierto 1 + 2 = 3
3 3 cierto 3 + 3 = 6
4 4 cierto 6 + 4 = 10
5 5 cierto 10 + 5 = 15
6 6 falso El bucle termina

Entonces, el valor final de la suma será 15 cuando n = 5.

Varias expresiones dentro de un bucle for

También podemos usar múltiples expresiones dentro de un bucle for. Significa que podemos tener más de una inicialización y / o declaraciones de iterador dentro de un ciclo for. Veamos el ejemplo a continuación.

Ejemplo 3: bucle for con múltiples expresiones de inicialización e iterador

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=0, j=0; i+j<=5; i++, j++) ( Console.WriteLine("i = (0) and j = (1)", i,j); ) ) ) ) 

Cuando ejecutamos el programa, la salida será:

 i = 0 y j = 0 i = 1 y j = 1 i = 2 y j = 2

En este programa, hemos declarado e inicializado dos variables: i y j en la declaración de inicialización.

Además, tenemos dos expresiones en la parte del iterador. Eso significa que tanto i como j se incrementan en 1 en cada iteración.

For bucle sin instrucciones de inicialización y iterador

The initialization, condition and the iterator statement are optional in a for loop. It means we can run a for loop without these statements as well.

In such cases, for loop acts as a while loop. Let's see the example below.

Example 4: for loop without initialization and iterator statement

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int i = 1; for ( ; i<=5; ) ( Console.WriteLine("C# For Loop: Iteration (0)", i); i++; ) ) ) ) 

When we run the program, the output will be:

 C# For Loop: Iteration 1 C# For Loop: Iteration 2 C# For Loop: Iteration 3 C# For Loop: Iteration 4 C# For Loop: Iteration 5

In this example, we haven't used the initialization and iterator statement.

The variable i is initialized above the for loop and its value is incremented inside the body of loop. This program is same as the one in Example 1.

Del mismo modo, la condición también es una declaración opcional. Sin embargo, si no usamos la expresión de prueba, el ciclo for no probará ninguna condición y se ejecutará para siempre (ciclo infinito).

Infinito para bucle

Si la condición en un bucle for siempre es verdadera, el bucle for se ejecutará para siempre. Esto se llama bucle for infinito.

Ejemplo 5: bucle for infinito

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1 ; i>0; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) ) 

Aquí, i se inicializa en 1 y la condición es i>0. En cada iteración, incrementamos el valor de i en 1, por lo que la condición nunca será false. Esto hará que el bucle se ejecute infinitamente.

También podemos crear un bucle infinito reemplazando la condición con un espacio en blanco. Por ejemplo,

 for (;;) (// cuerpo del bucle for) 

o

 for (inicialización;; iterador) (// cuerpo del bucle for) 

Articulos interesantes...