Laboratório — Classificador por regras
Por que este laboratório existe
Você vai implementar um classificador de desempenho com regras por faixa e testar cuidadosamente os limites.
Objetivo
Projetar if/elif/else corretos, legíveis e testados em fronteiras.
Importante: não tente terminar rápido. O objetivo é observar o que acontece em cada etapa. Se algo falhar, registre a entrada, a mensagem e a correção.
Preparação
- Crie
ft002-m04-lab/classificador.py. - Use notas de 0 a 10.
- Antes de codificar, desenhe as faixas em papel.
Código inicial
nota = float(input("Nota de 0 a 10: "))
# Valide e classifique abaixo.
Procedimento passo a passo
- Valide a nota: valores abaixo de 0 ou acima de 10 são inválidos.
- Classifique nota >= 9 como “excelente”, >= 7 como “bom”, >= 5 como “em recuperação” e abaixo de 5 como “insuficiente”.
- Garanta que a validação aconteça antes da classificação.
- Teste -0.1, 0, 4.99, 5, 6.99, 7, 8.99, 9, 10 e 10.1.
- Registre em uma tabela o resultado esperado e o observado.
- Explique por que a condição >= 9 precisa vir antes de >= 7.
Uma solução completa para comparar depois da tentativa
Tente primeiro sem consultar esta seção. Depois compare a sua versão com a solução e identifique diferenças de raciocínio, não apenas diferenças de nomes.
nota = float(input("Nota de 0 a 10: "))
if nota < 0 or nota > 10:
print("Nota inválida")
elif nota >= 9:
print("Excelente")
elif nota >= 7:
print("Bom")
elif nota >= 5:
print("Em recuperação")
else:
print("Insuficiente")
Resultado esperado
Cada entrada válida deve cair em exatamente uma faixa; entradas inválidas não devem receber uma classificação normal.
Checklist de validação
- Consigo executar o programa do início ao fim.
- Consigo explicar o papel de cada variável, condição, laço ou função que usei.
- Testei pelo menos um caso normal, um caso de fronteira e um caso problemático quando aplicável.
- Li e entendi qualquer mensagem de erro encontrada, em vez de apenas apagar a linha.
- Meu código usa nomes que descrevem os dados e mantém entrada, regra e saída compreensíveis.
Desafio extra
Adicione uma segunda condição de presença mínima e explique quando usar regra composta em vez de mais faixas.
Critério de conclusão
Considere o laboratório concluído apenas quando você conseguir recriar a parte principal sem copiar e explicar por que cada etapa existe. “Funcionou uma vez” não é o mesmo que “eu entendi”.
Avaliação com validação humana
Receba nota e feedback individual sobre esta atividade. Este serviço é opcional e não é necessário para concluir o curso ou receber o certificado gratuito.
Entrar para solicitar