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.