Boucle for — Wikipédia

En informatique, la boucle for est une structure de contrôle de programmation qui permet de répéter l'exécution d'une séquence d'instructions.

Selon les langages de programmation, différents mots-clés sont utilisés pour signaler cette structure de contrôle : for pour les descendants d'Algol, do pour FORTRAN, PL/Ietc.

Une « boucle for » a deux parties : une entête qui spécifie la manière de faire l'itération, et un corps qui est exécuté à chaque itération.

Boucle avec compteur

[modifier | modifier le code]

Dans cette forme de boucle, une variable prend des valeurs successives sur un intervalle. Cette forme est souvent utilisée pour exploiter les données d'une collection indexée.

POUR compteur DE 0 à fin    Instruction 1 FIN POUR Instruction 2 

Fortran II a introduit un premier compteur rudimentaire en 1958[réf. souhaitée].

Exemples de mise en œuvre

[modifier | modifier le code]

Suivant les langages on peut fixer la valeur de début, de fin et le pas d'incrémentation.

Exemple de boucle for en langage BASIC :

FOR compteur = depart TO fin instruction NEXT compteur 

Exemple de boucle for en langage Pascal :

for compteur := depart to fin do instruction ; 

Langage C et dérivés

[modifier | modifier le code]

La boucle for des langages C,C++[1] ou Java est beaucoup plus générale qu'un simple compteur.

for (initialisation ; test ; itération) opération; 

L'entête comporte une ou plusieurs initialisations, un test de continuation, une ou plusieurs itérations. Exemples en langage C :

    // remplissage d'un tableau     int t[5];     for (int i = 0; i < 5; i++) {         t[i] = i;     }      //  miroir d'un tableau     int t[10];     ...     for (int p = 0, d = 9;  p < d ; p++, d--) {         int temp = t[p];         t[p] = t[d];         t[d] = temp;     }      // mise en majuscule d'une chaine     char chaine[] = "Un deux trois";     for (char *p = chaine; *p != '\0'; p++) {        *p = toupper(*p);     } 

La boucle for en Python s'applique sur une collection. Ex :

for number in range(10):     print(number) 
for number in ['one', 'two', 'three']:     print(number) 

Notes et références

[modifier | modifier le code]