TÓPICO about_Do DESCRIÇÃO RESUMIDA Executa uma lista de instruções uma ou mais vezes, de acordo com uma condição While ou Until. DESCRIÇÃO LONGA A palavra-chave Do funciona com as palavras-chave While ou Until para executar as instruções em um bloco de scripts, de acordo com uma condição. Ao contrário do loop While relacionado, o bloco de scripts em um loop Do sempre é executado pelo menos uma vez. Um loop Do-While é uma variedade do loop While. Em um loop Do-While, a condição é avaliada após a execução do bloco de scripts. Como ocorre em um loop While, o bloco de scripts é repetido enquanto a condição é avaliada como verdadeira. Como ocorre com um loop Do-While, um loop Do-Until sempre é executado pelo menos uma vez antes de a condição ser avaliada. Porém, o bloco de scripts é executado apenas enquanto a condição é falsa. As palavras-chave de controle de fluxo Continue e Break podem ser usadas em um loop Do-While ou em um loop Do-Until. Sintaxe A seguir, é apresentada a sintaxe da instrução Do-While: do {<lista de instruções>} while (<condição>) A seguir, é apresentada a sintaxe da instrução Do-Until: do {<lista de instruções>} until (<condição>) A lista de instruções contém uma ou mais instruções que são executadas sempre que se entra no loop ou que ele é repetido. A parte condicional da instrução é resolvida como verdadeira ou falsa. Exemplo O seguinte exemplo de uma instrução Do conta os itens em uma matriz até alcançar um item com valor igual a 0. C:\PS> $x = 1,2,78,0 C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0) C:\PS> $count 3 O exemplo a seguir usa a palavra-chave Until. Observe que o operador diferente de (-ne) é substituído pelo 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 O exemplo a seguir escreve todos os valores de uma matriz, ignorando os que são menores que zero. do { if ($x[$a] -lt 0) { continue } Write-Host $x[$a] } while (++$a -lt 10) CONSULTE TAMBÉM about_While about_Operators about_Assignment_Operators about_Comparison_Operators about_Break about_Continue