Aller au contenu

Boucle for

Un article de Wikipédia, l'encyclopédie libre.

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]