Comando Repita Enquanto (CONDICAO_eh_verdadeira) COMANDO1

Comando de repetição (laço) com condição de entrada. Útil para executar determinada sequência de instruções (bloco de repetição) repetidas vezes. Com este tipo de laço o bloco de repetição será executado enquanto a condição de entrada for satisfeita.

Sintaxe

A sintaxe desse comanto em Portugol é:
repita_enquanto ( CONDICAO ) {
  BLOCO_DE_COMANDOS;
  }

Exemplo.

Dado n (a ser digitado pelo usuário), imprimir os n primeiros naturais.
programa { 
  funcao vazio inicio (  )  {
    inteiro n <- 0
    inteiro i <- 1
    leia ( n ) 
    repita_enquanto ( i < n )  {
      escreva ( i )
      i <- i+1
      }
    }
  }

Exemplo Visual.


O exemplo de código visual no iVProg, na fig. 2, tem duas variáveis, n para o usuário digitar um valor inteiro e o i para servir de contador. Durante a repetição do laço enquanto, se o contador chegar ao valor constante 5, então a condição i==5 será verdadeira e, desse modo, será executado o o comando escreva("Achei o valor 5. Pare!") e a seguir é executado o comando de "quebra de laço", seguindo para o primeiro comando fora do laço, no caso o comando escreva("Final do laco com i=" + i) (imprime Final do laco com i=5).
Por outro lado, se o valor digitado for estritamente menor que 5, nunca entrará no comando de seleção se/senão.
Fig. 1. Diagrama de fluxo de execução do laço do tipo 'repita enquanto'.



Fig. 2. Exemplo de uso do comando repita enquanto.

O exemplo acima realiza uma iteração da variável i de 0 até n-1, se n for maior que 5, o comando pare será executado quanto i tiver o valor 5. Neste momento, a mensagem Achei o valor 5. Pare! será impressa no terminal e o laço repita enquanto será interrompido.