Início > lang > do 
 en fr de es it nl pl pt mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Anterior  Próximo  Editar  Renomear  Desfazer  Atualizar  Procurar  Administração  
Documentação
História
 
Cuidado! Esta página não está atualizada.  Veja a versão em inglês 
DO
DO [ WHILE Condicao ]
    .
    .
    .
  [ BREAK | CONTINUE ]
    .
    .
    .
LOOP [ UNTIL Condicao ]

Repete um número de instruções enquanto a condição inicial permanece verdadeiro ou até a condição final se tornar verdadeira.

Parte Descrição
DO Sempre a primeira instrução do loop.
WHILE Se usado, define uma Condicao que deve permanecer verdadeira para executar o loop.
UNTIL Se usado, define uma Condicao que deve se tornar verdadeira para parar a execução do loop.
Condicao Qualquer expressão booleana.
BREAK Imediatamente salta para fora do loop e continua a execução do programa com a próxima linha após o loop.
CONTINUE Imediatamente deixa todas as intruções seguintes do loop e salta para o final do loop fazendo com que ele recomece novamente.
LOOP Sempre a última instrução do loop.

Se a Condicao inicial é falsa desde o início, o loop não é executado. Caso contrário, o loop irá ser executado pelo menos uma vez, mesmo se a Condicao final é verdadeira desde o início.

Exemplo

' Um loop bem simples

a = 1

DO WHILE a \<= 5
  PRINT "Alô mundo"; a
  INC a
LOOP

Alô mundo 1
Alô mundo 2
Alô mundo 3
Alô mundo 4
Alô mundo 5

' O mesmo efeito com UNTIL

DO
  PRINT "Alô Mundo"; a
  INC a
LOOP UNTIL a = 6

Cuidado para não entrar com o loop UNTIL com o valor de "a" sendo maior que 5. "a" será incrementado para um valor maior que 6, e o único meio de parar o loop será perdido. Ao invés disto será melhor usar "LOOP UNTIL a > 5" para minimizar o risco de loop infinito.

' Este loop nunca chegará a seu valor final
a = 1

DO WHILE a \<= 5
  PRINT "Alô Mundo"; a
  INC a
  IF a = 4 THEN BREAK
LOOP

Alô Mundo 1
Alô Mundo 2
Alô Mundo 3

Veja também

Estruturas de Controle de Loop