Ir - para bucle

UN forloop es una estructura de control de repetición. Le permite escribir un bucle que necesita ejecutarse un número específico de veces.

Sintaxis

La sintaxis de for bucle en el lenguaje de programación Go es -

for [condition |  ( init; condition; increment ) | Range] {
   statement(s);
}

El flujo de control en un for bucle es un sigue -

  • Si un condition está disponible, entonces el bucle for se ejecuta siempre que la condición sea verdadera.

  • Si un for cláusula que es ( init; condition; increment ) está presente entonces -

    • los initEl paso se ejecuta primero y solo una vez. Este paso le permite declarar e inicializar cualquier variable de control de bucle. No es necesario que ponga una declaración aquí, siempre que aparezca un punto y coma.

    • A continuación, el conditionse evalúa. Si es cierto, se ejecuta el cuerpo del bucle. Si es falso, el cuerpo del ciclo no se ejecuta y el flujo de control salta a la siguiente declaración justo después de lafor lazo.

    • Después de que se ejecuta el cuerpo del bucle for, el flujo de control vuelve a subir al incrementdeclaración. Esta declaración le permite actualizar cualquier variable de control de bucle. Esta declaración se puede dejar en blanco, siempre que aparezca un punto y coma después de la condición.

    • La condición ahora se evalúa nuevamente. Si es cierto, el ciclo se ejecuta y el proceso se repite (cuerpo del ciclo, luego paso de incremento y luego nuevamente la condición). Una vez que la condición se vuelve falsa, el ciclo for termina.

  • Si range está disponible, el bucle for se ejecuta para cada elemento del rango.

Diagrama de flujo

Ejemplo

package main

import "fmt"

func main() {
   var b int = 15
   var a int
   numbers := [6]int{1, 2, 3, 5} 

   /* for loop execution */
   for a := 0; a < 10; a++ {
      fmt.Printf("value of a: %d\n", a)
   }
   for a < b {
      a++
      fmt.Printf("value of a: %d\n", a)
   }
   for i,x:= range numbers {
      fmt.Printf("value of x = %d at %d\n", x,i)
   }   
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado:

value of a: 0
value of a: 1
value of a: 2
value of a: 3
value of a: 4
value of a: 5
value of a: 6
value of a: 7
value of a: 8
value of a: 9
value of a: 1
value of a: 2
value of a: 3
value of a: 4
value of a: 5
value of a: 6
value of a: 7
value of a: 8
value of a: 9
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of x = 1 at 0
value of x = 2 at 1
value of x = 3 at 2
value of x = 5 at 3
value of x = 0 at 4
value of x = 0 at 5