Allez - pour Loop

UNE forloop est une structure de contrôle de répétition. Il vous permet d'écrire une boucle qui doit s'exécuter un certain nombre de fois.

Syntaxe

La syntaxe de for boucle dans le langage de programmation Go est -

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

Le flux de contrôle dans un for la boucle est une suite -

  • Si un condition est disponible, alors la boucle for s'exécute tant que la condition est vraie.

  • Si un for clause qui est ( init; condition; increment ) est présent alors -

    • le initl'étape est exécutée en premier, et une seule fois. Cette étape vous permet de déclarer et d'initialiser toutes les variables de contrôle de boucle. Vous n'êtes pas obligé de mettre une instruction ici, tant qu'un point-virgule apparaît.

    • Ensuite, le conditionest évalué. Si c'est vrai, le corps de la boucle est exécuté. S'il est faux, le corps de la boucle ne s'exécute pas et le flux de contrôle passe à l'instruction suivante juste après lefor boucle.

    • Une fois que le corps de la boucle for s'exécute, le flux de contrôle revient au incrementdéclaration. Cette instruction vous permet de mettre à jour toutes les variables de contrôle de boucle. Cette instruction peut être laissée vide, tant qu'un point-virgule apparaît après la condition.

    • La condition est à nouveau évaluée. S'il est vrai, la boucle s'exécute et le processus se répète (corps de la boucle, puis incrémentation, puis à nouveau la condition). Une fois que la condition devient fausse, la boucle for se termine.

  • Si range est disponible, puis la boucle for s'exécute pour chaque élément de la plage.

Représentation schématique

Exemple

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)
   }   
}

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

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