RUBRIQUE
about_Do
DESCRIPTION COURTE
Exécute une liste d'instructions une ou plusieurs fois, en
fonction d'une condition While ou Until.
DESCRIPTION LONGUE
Le mot clé Do est utilisé avec le mot clé While ou Until pour
exécuter les instructions d'un bloc de script, en fonction d'une
condition. Contrairement à la boucle While connexe, le bloc de
script d'une boucle Do s'exécute toujours au moins une fois.
Une boucle Do-While est un type de boucle While. Dans une boucle
Do-While, la condition est évaluée après l'exécution du bloc de
script. Comme dans une boucle While, le bloc de script est répété
tant que la condition prend la valeur true.
Comme une boucle Do-While, une boucle Do-Until s'exécute toujours
au moins une fois qu'avant que la condition ne soit évaluée.
Toutefois, le bloc de script s'exécute uniquement tant que la
condition a la valeur false.
Les mots clés de contrôle de flux Continue et Break peuvent être
utilisés dans une boucle Do-While ou Do-Until.
Syntaxe
La syntaxe de l'instruction Do-While se présente comme suit :
do {<liste d'instructions>} while (<condition>)
La syntaxe de l'instruction Do-Until se présente comme suit :
do {<liste d'instructions>} until (<condition>)
La liste d'instructions contient une ou plusieurs instructions qui
s'exécutent à chaque entrée dans la boucle ou répétition de celle-ci.
La partie de l'instruction réservée à la condition se résout en
valeur true ou false.
Exemple
Dans l'exemple suivant, une instruction Do compte les éléments d'un
tableau jusqu'à ce qu'elle atteigne un élément ayant la valeur 0.
C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0)
C:\PS> $count
3
L'exemple ci-dessous utilise le mot clé Until. Notez que l'opérateur
Différent de (-ne) est remplacé par l'opérateur Égal à (-eq).
C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0)
C:\PS> $count
3
L'exemple suivant permet d'écrire l'ensemble des valeurs d'un
tableau en ignorant toute valeur inférieure à zéro.
do
{
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)
VOIR AUSSI
about_While
about_Operators
about_Assignment_Operators
about_Comparison_Operators
about_Break
about_Continue