Capítulo 08: Condicionais em Cadeia (Múltiplas Escolhas)

🎯 Objetivo da Aula

Nem tudo é apenas “Sim” ou “Não”. Às vezes temos 3, 4 ou 10 opções. Nesta aula, você aprenderá sobre Condicionais em Cadeia (aninhamento). O objetivo é criar menus de opções (como um teclado telefônico) colocando um bloco SE dentro do SENÃO de outro, organizando a lógica de decisão do seu simulador.


🏢 O Cenário Prático (Seu Desafio)

Situação: O terminal da portaria da FastLog precisa direcionar os motoristas. As Opções:

  1. Carga
  2. Descarga
  3. Manutenção

Missão: Criar um programa que peça um número (1, 2 ou 3) e diga para qual pátio o motorista deve seguir.


🧠 Fundamentos: A Teoria Traduzida

1. O que é Aninhamento?

É como uma boneca russa (Matrioshka): você coloca uma decisão dentro da outra.

🚦 Exemplo 1: Cotidiano (Semáforo)

  • [se (verde)] -> [siga]
  • [senão] -> [se (amarelo)] -> [atenção] -> [senão] -> [pare]

📦 Exemplo 2: Técnico (Status de Pedido)

  • [se (opcao = 1)] -> [Pátio A]
  • [senão] -> [se (opcao = 2)] -> [Pátio B] -> [senão] -> [Portaria]
graph TD
    A[Pergunta: Qual Opção?] --> B{Opção = 1?}
    B -- "Sim" --> C[Pátio de Carga]
    B -- "Não" --> D{Opção = 2?}
    D -- "Sim" --> E[Pátio de Descarga]
    D -- "Não" --> F[Setor de Manutenção]
    
    style B fill:#f39c12,stroke:#fff,color:#fff
    style D fill:#f39c12,stroke:#fff,color:#fff

🛠️ Mão na Massa: Atividade 08 - Menu de Direcionamento

Vamos programar o menu da portaria:

Passo 1: O Código de Múltipla Escolha

Encaixe os blocos (Cuidado com o encaixe!):

  1. 🟡 Eventos: [quando clicar em 🏁]
  2. 🔵 Sensores: [pergunte "Digite 1-Carga, 2-Descarga ou 3-Manutenção" e espere]
  3. 🟠 Controle: [se ( (resposta) = 1 ) então]
    • 🟣 Aparência: [diga "Siga para o Pátio NORTE" por 2 segundos]
  4. 🟠 Controle: [senão]
    • 🟠 Controle: [se ( (resposta) = 2 ) então] ⬅️ Este SE vai dentro do SENÃO anterior
      • 🟣 Aparência: [diga "Siga para o Pátio SUL" por 2 segundos]
    • 🟠 Controle: [senão]
      • 🟣 Aparência: [diga "Siga para a Manutenção" por 2 segundos]

✅ Resultado Esperado

  • Se digitar 1, ele responde Norte.
  • Se digitar 2, ele responde Sul.
  • Se digitar qualquer outra coisa, ele responde Manutenção.

📤 Instruções de Entrega (Microsoft Teams)

  1. Crie um Classificador de Tamanho de Carga.
  2. Peça o “Peso”.
  3. Se peso < 100, diga “Leve”. Senão, se peso < 500, diga “Média”. Senão, diga “Pesada”.
  4. Envie o print no Microsoft Teams na tarefa “Scratch Cap 08 - Condicionais Aninhadas”.

💡 Checkpoint de Lógica

  • Para TI (Aninhamento): Encaixar um se dentro de outro é chamado de Aninhamento. É poderoso, mas cuidado para não criar um “Código Espaguete” que ninguém consiga ler.
  • Para ADM (Hierarquia): Use essa estrutura para definir Prioridades de Atendimento (ex: Urgente > Importante > Normal).

🔥 Desafio de Fixação (ADM/TI)

Classificação ABC de Estoque: Peça o valor de um item.

  • Se for > 5000: Diga “Classe A”.
  • Senao se for > 1000: Diga “Classe B”.
  • Senao: Diga “Classe C”.

🔑 Gabarito de Lógica (Blocos)

Classificador:

  • [se ( (peso) < 100 ) então] -> [diga "Leve"]
  • [senão]
  • [se ( (peso) < 500 ) então] -> [diga "Média"]
  • [senão] -> [diga "Pesada"]