if e else
Objetivo da aula
Modelar duas alternativas mutuamente exclusivas.
Regra desta aula: vamos assumir que você nunca viu este assunto antes. Nenhum termo importante será usado sem explicação e todo exemplo deve ser entendido linha por linha, não apenas copiado.
Começando do zero
if e else representam duas alternativas complementares. Se a condição é verdadeira, executa o primeiro bloco; caso contrário, executa o bloco do else. Em uma mesma execução dessa estrutura, apenas um dos dois caminhos é escolhido.
Uma imagem mental para entender
Pense em uma catraca: “se o cartão é válido, libere; senão, bloqueie”. Não há necessidade de fazer duas perguntas separadas quando o segundo caso é exatamente o contrário do primeiro.
Conceitos essenciais, sem pular etapas
Dois caminhos
A condição do if decide qual de dois blocos mutuamente exclusivos será executado.
else não possui condição própria
Ele significa “caso a condição anterior não tenha sido satisfeita”.
Evite duplicar testes
Escrever um segundo if para o oposto pode funcionar, mas é menos claro quando os casos são realmente complementares.
Depois da estrutura
Quando o bloco escolhido termina, a execução continua na primeira linha após o if/else.
Modelo mental
PERGUNTA → VERDADEIRO: CAMINHO A | FALSO: CAMINHO B → CONTINUA
Exemplo 1 — primeiro veja o programa inteiro
saldo = 40
compra = 55
if saldo >= compra:
print("Compra autorizada")
else:
print("Saldo insuficiente")
print("Verificação encerrada")
Agora vamos ler linha por linha
- A condição pergunta se o saldo cobre a compra.
- Como 40 não é maior ou igual a 55, o bloco do
ifé ignorado. - O
elseexecuta e informa saldo insuficiente. - Depois, a mensagem final executa em qualquer caso.
Saída esperada
Saldo insuficiente
Verificação encerrada
Exemplo 2 — o mesmo conceito em outra situação
numero = 7
if numero % 2 == 0:
print("par")
else:
print("ímpar")
O resto da divisão por 2 permite distinguir os dois casos neste contexto: resto 0 significa par; caso contrário, o inteiro é ímpar.
Experimento guiado
Não pule esta parte. Programação só começa a fazer sentido quando você prevê um resultado, executa e compara a previsão com o que realmente aconteceu.
- Teste o primeiro exemplo com saldo 100 e depois 40.
- Teste o exemplo de paridade com 7, 8 e 0.
- Escreva em português as duas alternativas antes de codificar.
- Identifique a linha em que os caminhos voltam a se encontrar.
Mini desafio
Crie uma regra que receba estoque = 0 e mostre “Disponível” quando estoque for maior que zero; caso contrário, “Esgotado”.
Solução comentada
estoque = 0
if estoque > 0:
print("Disponível")
else:
print("Esgotado")
Depois de executar a solução, altere pelo menos um valor e explique por que o novo resultado mudou. Se você só copiou e não consegue explicar cada linha, refaça o desafio em uma versão menor.
Erros comuns e por que acontecem
- Colocar uma condição depois de
else; se precisa de outra condição, provavelmente querelif. - Escrever dois
ifindependentes quando os caminhos deveriam ser mutuamente exclusivos. - Indentar uma linha final como se pertencesse ao
elsesem perceber.
Cheque se você realmente entendeu
Quantos blocos do if/else executam em uma passagem?
Resposta: Exatamente um.
O else precisa de condição?
Resposta: Não. Ele cobre o caso em que a condição anterior foi falsa.
O que acontece depois do bloco escolhido?
Resposta: A execução continua após a estrutura condicional.
Resumo em linguagem simples
Nesta aula, o ponto central foi if e else. Tente explicar o modelo PERGUNTA → VERDADEIRO: CAMINHO A | FALSO: CAMINHO B → CONTINUA sem olhar a tela. Depois, escreva um exemplo próprio menor que os apresentados. Esse exercício de explicação é parte do aprendizado, não um extra.
Conexão com a próxima aula
Na próxima aula, elif e múltiplas faixas, vamos aproveitar exatamente o que foi construído aqui. Você não precisa memorizar tudo; precisa conseguir reconhecer o conceito e reconstruí-lo com raciocínio e testes.