Semana 4 de 8
Condicionais
O programa começa a fazer escolhas. Os estudantes usam if, elif e else para ele fazer coisas diferentes conforme a resposta do jogador. Eles montam um quiz curto que confere respostas e reage a cada uma: o coração de qualquer jogo que dá para ganhar ou perder.
- Tempo estimado
- 55 a 60 minutos
- Projeto
- Quiz de conhecimentos ou de personalidade
A ideia
Uma condicional deixa o programa escolher. O Python checa uma condição, algo que é verdadeiro ou falso, e roda as linhas indentadas abaixo só se a condição for verdadeira. Com if, elif e else, um programa pode reagir de um jeito a uma resposta certa, de outro a uma resposta quase certa e de outro a uma errada. É assim que um jogo decide se você pontuou, venceu ou perdeu.
O que você vai aprender
- Escrever um if que só roda quando a condição é verdadeira.
- Acrescentar elif e else para lidar com as outras respostas.
- Comparar a resposta do jogador com um valor esperado usando ==.
- Consertar a confusão comum entre = e ==.
Palavras novas
- condição
- Uma pergunta com resposta verdadeira ou falsa, como resposta == "Terra".
- if
- Roda as linhas indentadas abaixo dele só quando a condição é verdadeira.
- elif
- Checa outra condição quando as de cima deram falso.
- else
- Roda quando nenhuma das condições acima foi verdadeira.
- ==
- Checa se dois valores são iguais (diferente de =, que guarda um valor).
Projeto: Quiz de conhecimentos ou de personalidade
Edite o código inicial abaixo e clique em Executar para ver funcionar. Use Restaurar código inicial para voltar ao original quando quiser.
Execute seu programa para ver a saída.
Resultado esperado
Em qual planeta a gente vive? Terra
Isso mesmo! 1 ponto.Minidesafio
Acrescente uma segunda pergunta com o próprio if / else, para o seu quiz ter duas perguntas seguidas.
Desafio de depuração
O Python mostra um erro na linha do if. Um sinal de igual guarda um valor em uma variável. O que você usa quando quer checar se duas coisas são iguais?
Código com erro
resposta = input("Em qual planeta a gente vive? ")
if resposta = "Terra":
print("Isso mesmo!")Ver soluçãoOcultar solução
Comparar dois valores precisa de dois sinais de igual:
if resposta == "Terra":Desafio extra
Transforme em um teste de personalidade: faça uma pergunta do tipo "o que você prefere" e imprima um resultado diferente para cada escolha usando if, elif e else.
Reflita
Seu programa agora reage de formas diferentes a respostas diferentes. No seu jogo final, qual é uma decisão que o programa vai precisar tomar, e o que deve acontecer em cada caso?
Notas para o professor
Dois pontos de atenção: indentação (as linhas embaixo de um if precisam ser indentadas) e = versus == (guardar versus comparar). A comparação de strings é exata e diferencia maiúsculas, que é justamente o que a linha elif está ali para destacar. Deixe os estudantes baterem sozinhos no erro de = / ==: a mensagem aponta direto para ele.
Vai conduzir esta aula? Veja o guia para professores e bibliotecários com o passo a passo, os erros mais comuns e uma atividade de reserva sem computador.
Terminou esta aula? Marque como concluída para desbloquear a próxima semana.