Capítulo 05: Condicionais I (SE-ENTAO)

🎯 Objetivo da Aula

Programar é criar regras. Nesta aula, você aprenderá sobre a Estrutura de Decisão Simples. O objetivo é capacitar você a criar algoritmos que tomam decisões baseadas em condições: “Se tal coisa for verdade, faça isso”.


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

Situação: O limite de carga para as prateleiras do setor B da FastLog é de 1.000 kg. O Problema: O operador de empilhadeira precisa ser avisado visualmente se a carga que ele está tentando alocar ultrapassa esse limite de segurança.

Missão: Criar um alerta de segurança que só aparece se o limite for excedido.


🧠 Fundamentos: A Teoria Traduzida

1. O que é uma Condicional?

É um “E SE?”. Na programação, usamos o comando se seguido de uma condição e a palavra obrigatória entao.

⛈️ Exemplo 1: Cotidiano (Chuva)

se (esta_chovendo) entao levar_guarda_chuva fimse

📦 Exemplo 2: Técnico (Gestão de Estoque)

se (estoque < ponto_de_pedido) entao disparar_compra fimse

graph TD
    A[Início] --> B{Estoque < 10?}
    B -->|Verdadeiro| C[Emitir Pedido de Compra]
    B -->|Falso| D[Continuar Monitorando]
    C --> E[Fim]
    D --> E
    
    style B fill:#8e44ad,stroke:#fff,color:#fff
    style C fill:#e74c3c,stroke:#fff,color:#fff

2. A Sintaxe no VisuAlg

No VisuAlg, toda estrutura se deve terminar com um fimse.

1
2
3
se (condicao) entao
   // comandos aqui
fimse

📖 Exemplo Guiado: Alerta de Sobrecarga

O comando se permite criar regras de negócio. No VisuAlg, lembre-se das palavras obrigatórias: entao e fimse.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
algoritmo "Alerta_Seguranca"
var
   peso_pallet : real
inicio
   escreva("Peso do Pallet (Kg): ")
   leia(peso_pallet)
   
   se (peso_pallet > 1000) entao
      escreval("!!! ALERTA: SOBRECARGA DETECTADA !!!")
   fimse
   escreval("Fim da pesagem.")
fimalgoritmo

🛠️ Prática Obrigatória 1: Validador de Saldo

Crie um programa que peça o valor_da_compra e o saldo_em_conta. Se o valor for maior que o saldo, exiba a mensagem: “STATUS: Saldo Insuficiente para Frete”.

✅ Resultado Esperado

1
2
3
Compra: 1200.0
Saldo: 1000.0
STATUS: Saldo Insuficiente para Frete

🛠️ Prática Obrigatória 2: Alerta de Orçamento FastLog

Peça o gasto_mensal e o orcamento_limite. Se o gasto ultrapassar o limite, exiba um alerta: “ATENÇÃO: Limite de custos do setor excedido!”.

✅ Resultado Esperado

1
2
3
Gasto: 5500.0
Limite: 5000.0
ATENÇÃO: Limite de custos do setor excedido!

🔥 Desafio de Fixação (Opcional): Verificador de Idade

Crie um programa que peça a idade de um novo motorista. Se ele tiver menos de 18 anos, exiba a mensagem: “BLOQUEIO: Candidato não possui idade mínima para CNH”.


📤 Instruções de Entrega (Microsoft Teams)

Após validar seus códigos:

  1. Certifique-se de que a condição do se está entre parênteses.
  2. Salve os arquivos com a extensão .alg (Ex: Atividade_05_SeuNome.alg).
  3. Envie no Microsoft Teams na tarefa “VisuAlg Cap 05 - Condicionais Simples”.

🔑 Gabarito de Código

Prática 1:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
algoritmo "Validador"
var
   vlr, saldo : real
inicio
   escreva("Valor: ") leia(vlr)
   escreva("Saldo: ") leia(saldo)
   se (vlr > saldo) entao
      escreval("STATUS: Saldo Insuficiente para Frete")
   fimse
fimalgoritmo

Desafio:

1
2
3
4
5
6
7
8
9
algoritmo "CheckIdade"
var
   idade : inteiro
inicio
   escreva("Idade: ") leia(idade)
   se (idade < 18) entao
      escreva("BLOQUEIO: Candidato não possui idade mínima")
   fimse
fimalgoritmo