Olá, Deivide. Como vai?
O seu código está excelente! A estrutura lógica para capturar as notas, calcular a média aritmética e aplicar as condições estruturadas com if, elif e else foi implementada perfeitamente. A formatação da média com duas casas decimais utilizando f-string ({media:.2f}) também é uma ótima prática no Python.
Notei apenas um detalhe curioso no seu post: o título do tópico é "11 Calculando pedágio", mas o código que você compartilhou resolve um problema de "Média de Notas de Alunos".
Isso é super comum acontecer quando estamos estudando vários desafios seguidos! Caso você precise de ajuda especificamente com o código de cálculo de pedágio (que geralmente envolve verificar o tipo de veículo ou a distância percorrida), sinta-se à vontade para postar as regras de negócio dele aqui.
Aproveitando o seu código atual de notas, quero compartilhar duas dicas de boas práticas que deixam o seu script Python ainda mais robusto e profissional:
1. Indentação do Código
No Python, a indentação (o recuo de 4 espaços) é obrigatória dentro das estruturas condicionais. No seu post, os comandos print acabaram colados na margem esquerda. Para garantir que o Python execute sem erros, certifique-se de que eles fiquem recuados assim:
if media >= 7:
print("Aprovado")
elif 5 <= media < 7:
print("Recuperação")
else:
print("Reprovado")
2. Tratamento de Erros na Entrada de Dados (Dica Extra)
Quando usamos o float(input()), se o usuário digitar uma letra ou usar uma vírgula em vez de ponto (ex: 7,5), o Python vai travar e exibir um erro de valor (ValueError).
Uma boa prática para programas que rodam no terminal é proteger o código com uma estrutura de tratamento de exceções chamada try-except. Veja como seu código ficaria protegido contra digitações incorretas:
try:
# Recebe as três notas do aluno
nota1 = float(input("Digite a primeira nota: "))
nota2 = float(input("Digite a segunda nota: "))
nota3 = float(input("Digite a terceira nota: "))
# Calcula a média aritmética
media = (nota1 + nota2 + nota3) / 3
print(f"Média: {media:.2f}")
# Verifica a situação do aluno
if media >= 7:
print("Aprovado")
elif 5 <= media < 7:
print("Recuperação")
else:
print("Reprovado")
except ValueError:
print("Erro: Por favor, digite apenas números utilizando o ponto como separador decimal (ex: 7.5).")
Você demonstrou domínio na construção das condições compostas (5 <= media < 7), o que deixa o código muito legível e elegante no Python. Parabéns pelo desenvolvimento!
Espero que possa ter lhe ajudado!