Bem-vindos à Jornada IF-ELSE!
Vamos dominar as estruturas de decisão que tornam nossos programas inteligentes
O que vamos aprender?
- Estruturas if-else
- Operadores lógicos
- Estruturas aninhadas
- Boas práticas
- Projetos práticos
Por que é importante?
- Base da programação
- Usado em todas as linguagens
- Sistemas do mundo real
- Desenvolve lógica
- Prepara para o futuro
🌟 Exemplo do Dia a Dia
"Se estiver chovendo, levo guarda-chuva. Senão, levo óculos de sol."
Está chovendo?
Levo guarda-chuva
Levo óculos de sol
Conceitos Fundamentais
🔍Definição
A estrutura de seleção composta permite que o programa execute diferentes blocos de código dependendo de uma condição. É como uma bifurcação no caminho: se a condição for verdadeira, segue um caminho; se for falsa, segue outro.
✅ Quando usar IF-ELSE?
Verificar se idade é válida
Usuário correto ou incorreto
Desconto para clientes VIP
🎯 Vantagens
Lógica clara e estruturada
Mudanças simples e seguras
Reduz bugs no código
🧪 Demonstração Interativa
Digite sua idade para ver o IF-ELSE em ação:
Sintaxe: Pseudocódigo vs Java
Pseudocódigo
Java
🔧Exemplo: Verificação de Maioridade
Pseudocódigo:
Java:
⚠️ Pontos Importantes
Obrigatórias em Java, mesmo com um comando
Necessário após cada comando em Java
Melhora a legibilidade do código
Deve retornar verdadeiro ou falso
Operadores Lógicos
Combinando condições para decisões mais inteligentes
E (AND)
Ambas condições devem ser verdadeiras
OU (OR)
Pelo menos uma deve ser verdadeira
NÃO (NOT)
Inverte o valor lógico
📊 Tabelas Verdade
Operador && (E)
A | B | A && B |
---|---|---|
V | V | V |
V | F | F |
F | V | F |
F | F | F |
Operador || (OU)
A | B | A || B |
---|---|---|
V | V | V |
V | F | V |
F | V | V |
F | F | F |
Operador ! (NÃO)
A | !A |
---|---|
V | F |
F | V |
🧪 Teste os Operadores Lógicos
Configure os valores:
Resultados:
Exemplos Práticos
Aplicações reais do IF-ELSE no dia a dia
🔐 Sistema de Login Interativo
Código Java:
Teste aqui:
💰 Calculadora de Desconto Inteligente
Configure a compra:
Lógica do desconto:
👤 Classificador de Faixa Etária
Código com múltiplas condições:
Teste a classificação:
Estruturas Aninhadas
IF-ELSE IF para múltiplas condições
🔗Conceito
Estruturas aninhadas permitem testar múltiplas condições em sequência, executando apenas o primeiro bloco cuja condição seja verdadeira. É como uma escada de decisões!
✓ Como funciona
- • Testa condições em ordem
- • Para na primeira verdadeira
- • Executa apenas um bloco
- • else é opcional (caso padrão)
! Pontos importantes
- • Ordem das condições importa
- • Pode ter vários else if
- • Mais eficiente que IFs separados
- • Evita condições desnecessárias
⚙️ Sintaxe Geral
🎯 Sistema de Notas Completo
Código Java:
Teste o sistema:
⚖️ Comparação: IF separados vs IF-ELSE IF
❌ IFs Separados (Ineficiente)
• Condições mais complexas
• Menos eficiente
✅ IF-ELSE IF (Eficiente)
• Condições mais simples
• Mais eficiente
Boas Práticas & Atividades
Escreva código limpo e eficiente
✅ Faça Sempre
Mesmo com um comando só
Facilita a leitura do código
Variáveis com nomes descritivos
Explique a lógica quando necessário
Sempre verifique valores inválidos
❌ Evite
Divida em partes menores
Máximo 3-4 níveis
Reutilize código comum
Evite nomes como a, b, x, y
if (condicao == true) é redundante
📝 Atividade 1: Operadores Lógicos
Dadas as variáveis:
boolean b = false;
boolean c = true;
Calcule:
Teste suas respostas:
🔍 Atividade 2: Análise de Código
Analise este código e identifique o problema:
Pergunta:
Qual será a saída para idade = 65? Por quê?
💻 Atividade 3: Projetos Práticos
🔺 Classificador de Triângulos
Classifique triângulos pelos lados
- • Equilátero: 3 lados iguais
- • Isósceles: 2 lados iguais
- • Escaleno: 3 lados diferentes
- • Validar se forma triângulo
⚡ Calculadora de Energia
Calcule tarifa por faixas de consumo
- • 0-100 kWh: R$ 0,50
- • 101-200 kWh: R$ 0,75
- • 200+ kWh: R$ 1,00
- • Calcular valor total
⚖️ Classificador de IMC
Calcule e classifique o IMC
- • Calcular IMC = peso/altura²
- • Classificar pela OMS
- • Dar recomendações
- • Validar dados de entrada
Laboratório Prático
Sistemas de decisão complexos do mundo real
🎯Configuração do Ambiente
Passos iniciais:
- 1 Abra sua IDE Java (Eclipse, IntelliJ, VS Code)
- 2 Crie um novo projeto "SistemasDecisao"
- 3 Configure a estrutura de pacotes
- 4 Importe Scanner para entrada de dados
Estrutura sugerida:
💰 Sistema 1: Caixa Eletrônico
Funcionalidades:
- Verificar saldo atual
- Sacar dinheiro (validar saldo)
- Depositar dinheiro
- Transferir entre contas
- Validar PIN de segurança
Estrutura base:
🎓 Sistema 2: Avaliação Escolar Completa
Critérios de aprovação:
-
1
Média das 4 notas bimestrais
Peso igual para todas
-
2
Frequência mínima de 75%
Obrigatória para aprovação
-
3
Recuperação: média 5.0-6.9
Com frequência adequada
Regras de decisão:
📦 Sistema 3: Calculadora de Frete Inteligente
Faixas de peso:
Modificadores:
Validações:
🎮 Sistema 4: Jogo de Adivinhação Avançado
Mecânicas do jogo:
- Número aleatório entre 1-100
- Máximo 7 tentativas
- Dicas: "maior" ou "menor"
- Sistema de pontuação
- Níveis de dificuldade
Sistema de pontuação:
🧪 Teste e Validação
Estratégias de teste:
-
1
Teste unitário
Cada função individualmente
-
2
Casos extremos
Valores limites e inválidos
-
3
Teste de integração
Sistemas completos funcionando
Documentação:
-
📝
Comente o código
Explique a lógica complexa
-
📋
Crie manual do usuário
Como usar cada sistema
-
🐛
Documente bugs conhecidos
E suas possíveis soluções