Capítulo 10: Loop FAÇA-ENQUANTO
🎯 Objetivo da Aula
Às vezes, você precisa que o computador faça algo antes de perguntar se deve repetir. Nesta aula, você aprenderá o laço FACA-ENQUANTO (do-while). O objetivo é entender a diferença crucial entre ele e o enquanto: o faca-enquanto garante que o código dentro dele seja executado pelo menos uma vez.
🏢 O Cenário Prático (Seu Desafio)
Situação: O sistema de rastreamento da FastLog exige uma senha numérica de segurança. O Problema: Você precisa pedir a senha. Se ela estiver errada, você pede de novo. Você não pode verificar se a senha está certa antes mesmo do usuário digitar nada.
Missão: Criar um validador de senha que insiste na pergunta até que a resposta correta seja fornecida.
🧠 Fundamentos: A Teoria Traduzida
1. Execute Primeiro, Pergunte Depois
No laço faca-enquanto, o computador executa o bloco primeiro e só testa a condição no final.
🍜 Exemplo 1: Cotidiano (Sopa)
faca { comer_colherada } enquanto (ainda_tem_sopa)
🔐 Exemplo 2: Técnico (Login de Sistema)
faca { pedir_senha } enquanto (senha_esta_errada)
graph TD
A[Início] --> B[Pedir Token de Acesso]
B --> C{Token Inválido?}
C -- "Sim" --> B
C -- "Não" --> D[Sistema WMS Liberado]
D --> E[Fim]
style C fill:#f39c12,stroke:#fff,color:#fff3. A Sintaxe no Portugol
📖 Exemplo Guiado: Validador de Senha
No laço faca-enquanto, o código é executado pelo menos uma vez antes da condição ser testada:
🛠️ Prática Obrigatória 1: Somador com Opção
Crie um programa que peça para o usuário digitar números e vá somando-os. Após cada número, pergunte: “Deseja somar outro? (S/N)”. O programa deve continuar enquanto o usuário responder ‘S’.
✅ Resultado Esperado
🛠️ Prática Obrigatória 2: Menu de Sistema FastLog
Crie um menu usando faca-enquanto que exiba: 1. Iniciar Entrega | 2. Ver Saldo | 3. Sair. O programa deve repetir o menu até que a opção 3 seja escolhida.
✅ Resultado Esperado
🔥 Desafio de Fixação (Opcional): Validador de Entrada Positiva
Peça um número ao usuário usando faca-enquanto. O programa só deve aceitar o número e encerrar quando o usuário digitar um valor positivo (maior que zero). Se for negativo, peça novamente.
📤 Instruções de Entrega (Microsoft Teams)
Após validar seus códigos:
- O
faca-enquantoé perfeito para menus interativos que precisam rodar pelo menos uma vez. - Salve os arquivos com a extensão
.por(Ex:Atividade_10_SeuNome.por). - Envie no Microsoft Teams na tarefa “Capítulo 10 - Faca Enquanto”.