Perl do ... while Loop
Ao contrário for e while loops, que testam a condição do loop no topo do loop, o do...while loop verifica sua condição na parte inferior do loop.
UMA do...while loop é semelhante a um loop while, exceto que um loop do ... while tem garantia de execução pelo menos uma vez.
Sintaxe
A sintaxe de um do...while loop em Perl é -
do {
statement(s);
}while( condition );
Deve-se observar que a expressão condicional aparece no final do loop, de modo que a (s) instrução (ões) no loop são executadas uma vez antes de a condição ser testada. Se a condição for verdadeira, o fluxo de controle pula de volta para fazer e a (s) instrução (ões) no loop são executadas novamente. Este processo se repete até que a condição dada se torne falsa.
O número 0, as strings '0' e "", a lista vazia () e undef são todos false em um contexto booleano e todos os outros valores são true. Negação de um valor verdadeiro por! ou not retorna um valor falso especial.
Diagrama de fluxo
Exemplo
#!/usr/local/bin/perl
$a = 10;
# do...while loop execution
do{
printf "Value of a: $a\n";
$a = $a + 1;
}while( $a < 20 );
Quando o código acima é executado, ele produz o seguinte resultado -
Value of a: 10
Value of a: 11
Value of a: 12
Value of a: 13
Value of a: 14
Value of a: 15
Value of a: 16
Value of a: 17
Value of a: 18
Value of a: 19