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