Loops REXX: A Arte da Repetição Inteligente
DO, WHILE, FOREVER – Automatize qualquer tarefa repetitiva
➿ Tipos de loops:
- DO simples (contador):
/* Contar de 1 a 10 */ DO i = 1 TO 10 SAY 'Iteração' i END
-
DO WHILE (enquanto verdade):
/* Loop com condição no início */ contador = 1 DO WHILE contador <= 5 SAY 'Executando...' contador contador = contador + 1 END
-
DO UNTIL (até que verdade):
/* Loop com condição no final */ contador = 0 DO UNTIL contador >= 3 SAY 'Digite um valor (0 para sair):' PULL valor contador = contador + 1 END
-
DO FOREVER (infinito com saída controlada):
/* Menu principal de sistema */
DO FOREVER
SAY '=== MENU PRINCIPAL ==='
SAY '1. Processar'
SAY '2. Relatório'
SAY '3. Sair'
PULL opcao
IF opcao = 3 THEN LEAVE /* Sai do loop */
/* Processa opção */
SELECT
WHEN opcao = 1 THEN SAY 'Processando...'
WHEN opcao = 2 THEN SAY 'Gerando relatório...'
OTHERWISE SAY 'Opção inválida'
END
END
SAY 'Programa encerrado.'
🔧 Exemplo prático – Processar arquivo:
/* Simulando leitura de arquivo */ linhas = 5 /* Suponha que temos 5 linhas */ SAY 'Processando' linhas 'linhas...' DO i = 1 TO linhas SAY 'Processando linha' i /* Aqui viria código real de processamento */ IF i = 3 THEN ITERATE /* Pula a linha 3 */ SAY 'Linha' i 'processada com sucesso.' END SAY 'Processamento completo!'
⚡ Dicas profissionais:
-
Use
LEAVEpara sair antecipadamente de um loop -
Use
ITERATEpara pular para próxima iteração -
Evite loops infinitos acidentais
-
Sempre teste condições de saída
CTA: 👉 Agora falta aprender a manipular textos como um expert!