if e else

Modelar duas alternativas mutuamente exclusivas.

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 else executa 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.

  1. Teste o primeiro exemplo com saldo 100 e depois 40.
  2. Teste o exemplo de paridade com 7, 8 e 0.
  3. Escreva em português as duas alternativas antes de codificar.
  4. 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 quer elif.
  • Escrever dois if independentes quando os caminhos deveriam ser mutuamente exclusivos.
  • Indentar uma linha final como se pertencesse ao else sem 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.