Perl - Boucles

Il peut arriver que vous deviez exécuter un bloc de code plusieurs fois. En général, les instructions sont exécutées de manière séquentielle: la première instruction d'une fonction est exécutée en premier, suivie de la seconde, et ainsi de suite.

Les langages de programmation fournissent diverses structures de contrôle qui permettent des chemins d'exécution plus compliqués.

Une instruction de boucle nous permet d'exécuter une instruction ou un groupe d'instructions plusieurs fois et voici la forme générale d'une instruction de boucle dans la plupart des langages de programmation -

Le langage de programmation Perl fournit les types de boucle suivants pour gérer les exigences de bouclage.

N ° Sr. Type de boucle et description
1 boucle while

Répète une instruction ou un groupe d'instructions tant qu'une condition donnée est vraie. Il teste la condition avant d'exécuter le corps de la boucle.

2 jusqu'à boucle

Répète une déclaration ou un groupe d'instructions jusqu'à ce qu'une condition donnée devienne vraie. Il teste la condition avant d'exécuter le corps de la boucle.

3 pour boucle

Exécute une séquence d'instructions plusieurs fois et abrége le code qui gère la variable de boucle.

4 boucle foreach

La boucle foreach itère sur une valeur de liste normale et définit la variable VAR pour être chaque élément de la liste à son tour.

5 faire ... boucle while

Comme une instruction while, sauf qu'elle teste la condition à la fin du corps de la boucle

6 boucles imbriquées

Vous pouvez utiliser une ou plusieurs boucles à l'intérieur d'une autre boucle while, for ou do.. while.

Déclarations de contrôle de boucle

Les instructions de contrôle de boucle modifient l'exécution de sa séquence normale. Lorsque l'exécution quitte une étendue, tous les objets automatiques qui ont été créés dans cette étendue sont détruits.

Perl prend en charge les instructions de contrôle suivantes. Cliquez sur les liens suivants pour vérifier leurs détails.

N ° Sr. Déclaration de contrôle et description
1 déclaration suivante

Force la boucle à sauter le reste de son corps et à retester immédiatement son état avant de réitérer.

2 Dernière déclaration

Termine l'instruction de boucle et transfère l'exécution à l'instruction immédiatement après la boucle.

3 continue déclaration

Un bloc continue, il est toujours exécuté juste avant que le conditionnel soit sur le point d'être évalué à nouveau.

4 redo déclaration

La commande redo redémarre le bloc de boucle sans réévaluer le conditionnel. Le bloc Continuer, s'il y en a un, n'est pas exécuté.

5 déclaration goto

Perl prend en charge une commande goto avec trois formes: goto label, goto expr et goto & name.

La boucle infinie

Une boucle devient une boucle infinie si une condition ne devient jamais fausse. leforLa boucle est traditionnellement utilisée à cette fin. Puisque aucune des trois expressions qui forment lefor sont obligatoires, vous pouvez créer une boucle sans fin en laissant l'expression conditionnelle vide.

#!/usr/local/bin/perl
 
for( ; ; ) {
   printf "This loop will run forever.\n";
}

Vous pouvez terminer la boucle infinie ci-dessus en appuyant sur les touches Ctrl + C.

Lorsque l'expression conditionnelle est absente, elle est supposée vraie. Vous pouvez avoir une expression d'initialisation et d'incrémentation, mais en tant que programmeur, utilisez plus couramment la construction for (;;) pour signifier une boucle infinie.