Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
DESCRIPCIÓN BREVE
Ejecuta una lista de instrucciones una o varias veces, sujeto a una condición While o Until.
DESCRIPCIÓN LARGA
La palabra clave Do funciona con la palabra clave While o la palabra clave Until para ejecutar las instrucciones en un bloque de script, sujeto a una condición. A diferencia del bucle While relacionado, el bloque de script de un bucle Do siempre se ejecuta al menos una vez.
Un bucle Do-While es una variedad del bucle While. En un bucle Do-While , la condición se evalúa después de ejecutar el bloque de script. Como en un bucle While, el bloque de script se repite siempre que la condición se evalúe como true.
Al igual que un bucle Do-While , un bucle Do-Until siempre se ejecuta al menos una vez antes de evaluar la condición. Sin embargo, el bloque de script solo se ejecuta mientras la condición es false.
Las palabras clave de control de flujo Continue e Break se pueden utilizar en un bucle Do-While o en un bucle Do-Hasta .
Sintaxis
A continuación se muestra la sintaxis de la instrucción Do-While :
do {<statement list>} while (<condition>)
A continuación se muestra la sintaxis de la instrucción Do-Until :
do {<statement list>} until (<condition>)
La lista de instrucciones contiene una o varias instrucciones que se ejecutan cada vez que se introduce o repite el bucle.
La parte de condición de la instrucción se resuelve en true o false.
Ejemplo
En el ejemplo siguiente de una instrucción Do se cuentan los elementos de una matriz hasta que llega a un elemento con un valor de 0.
C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0)
C:\PS> $count
3
En el ejemplo siguiente se utiliza la palabra clave When. Observe que el operador no es igual a (-ne) se reemplaza por el operador igual a (-eq).
C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0)
C:\PS> $count
3
En el ejemplo siguiente se escriben todos los valores de una matriz, omitiendo cualquier valor menor que cero.
do {
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)