Capítulo 06: Condicionais Compostas e Encadeadas (SE / SENAO / SENAO SE)
🎯 Objetivo da Aula
Em sistemas corporativos, quase nunca ficamos sem fazer nada quando uma condição é falsa: tomamos um caminho alternativo (Senão / Else). E quando temos várias categorias possíveis (como faixas de risco ou tabelas de frete), precisamos encadear múltiplos testes lógicos.
Nesta aula, você aprenderá a:
- Dominar a estrutura condicional composta
se ... senao(If / Else). - Construir estruturas encadeadas com
senao se(Else If) de alta legibilidade. - Evitar o aninhamento excessivo e desorganizado de chaves.
- Desenvolver sistemas de classificação de risco e roteirização operacional.
📥 Material de Apoio e Código-Fonte da Aula:
- 📄 Arquivo Pronto (.por): Baixar Capitulo_06.por (abra diretamente no Portugol Studio)
- 📦 Exercícios Separados (.zip): Baixar Capitulo_06.zip
🏢 O Cenário Prático (Seu Desafio)
Situação: A seguradora da FastLog exige uma classificação de risco rigorosa para todas as cargas transportadas:
- Cargas com valor acima de R$ 100.000,00:
Risco Alto(Exige Escolta Armada Obrigatória). - Cargas com valor entre R$ 30.000,00 e R$ 100.000,00:
Risco Médio(Exige Rastreador Satelital Ativo). - Cargas com valor abaixo de R$ 30.000,00:
Risco Padrão(Monitoramento Padrão de Pátio).
Missão: Construir o Classificador de Risco FastLog, recebendo o valor da mercadoria e devolvendo o protocolo exato de segurança exigido pela apólice.
🧠 Fundamentos: A Lógica do se / senao se / senao
graph TD
A[Início: Avaliar Carga] --> B{Valor > R$ 100.000?}
B -- "Sim (verdadeiro)" --> C["Caminho do SE:<br/>Exigir Escolta Armada"]
B -- "Não (falso)" --> D{Valor >= R$ 30.000?}
D -- "Sim (verdadeiro)" --> E["Caminho do SENAO SE:<br/>Exigir Rastreador Satelital"]
D -- "Não (falso)" --> F["Caminho do SENAO Final:<br/>Risco Padrão"]
C --> G[Fim do Algoritmo]
E --> G
F --> G
style B fill:#8e44ad,stroke:#fff,color:#fff
style D fill:#f39c12,stroke:#fff,color:#fff
style C fill:#c0392b,stroke:#fff,color:#fff
style E fill:#2980b9,stroke:#fff,color:#fff
style F fill:#27ae60,stroke:#fff,color:#fff1. A Sintaxe Encadeada no Portugol Studio
📖 Exemplo Guiado: Classificador de Seguro e Risco
Código do Programa:
✅ Exemplo de Execução no Console (Shift + F6):
🛠️ Prática Obrigatória 1: Controle de Turno de Pátio
Passo 1: O Desafio
Crie um programa controle_turno.por que receba a hora atual (número inteiro de 0 a 23).
Classifique em:
- Das 06h às 13h:
Turno 1 - Manhã - Das 14h às 21h:
Turno 2 - Tarde/Noite - Das 22h às 05h:
Turno 3 - Madrugada (Adicional Noturno)
✅ Resultado Esperado (Prática 1):
🛠️ Prática Obrigatória 2: Simulador de Desconto por Volume
A FastLog oferece tabelas de desconto baseado no volume de caixas transportadas:
- Acima de 500 caixas: 15% de desconto.
- De 100 a 500 caixas: 10% de desconto.
- Abaixo de 100 caixas: Sem desconto (preço integral).
Crie um programa
desconto_volume.porque calcule e exiba o valor final com o desconto aplicado.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_06_SeuNome_SeuSobrenome.por. - Teste o código passando por todas as 3 categorias.
- No Microsoft Teams, envie na tarefa “Portugol Cap 06 - Condicionais Compostas”.
- Clique em Entregar (Turn In).
💡 Checkpoint de Lógica & Engenharia de Software
Você acabou de dominar Árvores de Decisão (Decision Trees). Em sistemas de recomendação de rotas (como Waze e Google Maps), encadeamentos condicionais avaliam congestionamento, pedágios e condições meteorológicas para sugerir a melhor rota ao motorista.
🔥 Desafio de Fixação: Calculadora de Categoria de CNH
Crie um programa que receba o peso bruto do caminhão em toneladas e a quantidade de passageiros, e informe qual categoria mínima de CNH é exigida:
- Acima de 6 toneladas: Categoria
C. - Acima de 8 passageiros: Categoria
D. - Veículos com reboque/carreta acoplada: Categoria
E. - Outros veículos leves: Categoria
B.
🔑 Gabarito de Código Completo
Prática 1:
Prática 2:
Desafio:
📝 Atividade Extra: Questionário de Fixação (Caderno)
Instruções: Responda no caderno, de próprio punho, as 10 perguntas abaixo com base no que foi estudado neste capítulo. Ao concluir, leve o caderno até o professor para correção e visto.
- Segundo os comentários do código de sintaxe do capítulo, em que situação o bloco dentro do
senao(final) é executado? - Segundo o Cenário Prático, qual classificação de risco é aplicada a cargas com valor acima de R$ 100.000,00, e qual exigência de segurança ela impõe?
- Qual é a faixa de valor (em R$) que define a classificação “Risco Médio”, segundo o Cenário Prático e o Exemplo Guiado?
- No Exemplo Guiado, qual exigência de segurança é exibida para a categoria “Risco Padrão” (Classe C)?
- Na Prática Obrigatória 1 (Controle de Turno de Pátio), quais são as três faixas de horário e os respectivos nomes de turno?
- Na Prática Obrigatória 2 (Simulador de Desconto por Volume), qual percentual de desconto é aplicado para pedidos acima de 500 caixas?
- E qual percentual de desconto é aplicado na faixa de 100 a 500 caixas, segundo a mesma prática?
- O que acontece com o desconto quando um pedido tem menos de 100 caixas, segundo a regra da Prática Obrigatória 2?
- Segundo o Checkpoint de Lógica, a que conceito o encadeamento condicional é comparado, e em quais aplicativos reais (citados no texto) esse tipo de lógica é usado?
- Segundo os comentários do código de sintaxe do capítulo, em que situação o bloco dentro do
senao se (condicao_2)é executado?