Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

Classificando estudantes por média

"""
Uma professora precisa de um programa que ajude a calcular a média final dos alunos e informe se foram aprovados, ficaram de recuperação ou reprovados. As regras são:

Média >= 7: Aprovado
5 <= Média < 7: Recuperação
Média < 5: Reprovado
Escreva um programa que receba três notas como entrada e calcule a média final. Com base na média, exiba a situação do aluno.
"""

def calculate_status(grades):
    average = sum(grades) / len(grades)
    GREEN = '\033[32m'
    YELLOW = '\033[33m'
    RED = '\033[31m'
    RESET = '\033[0m'
    
    if average >= 7:
        return f"{GREEN}Aprovado{RESET}"
    if 5 <= average < 7:
        return f"{YELLOW}Recuperação{RESET}"

    return f"{RED}Reprovado{RESET}"

grades = [float(input(f"Digite a nota {i+1}: ")) for i in range(3)]
status = calculate_status(grades)

print(f"Situação do aluno: {status}")
1 resposta
solução!

Olá, Julia! Como vai?

Gostei da forma como você organizou a lógica em uma função e utilizou a lista de notas junto com sum() e len() para calcular a média. Também foi interessante adicionar cores ao resultado usando códigos ANSI, deixando a saída mais visual e fácil de interpretar. Sua solução atende muito bem às regras propostas na atividade.

Uma dica interessante para o futuro é utilizar elif para deixar as condições ainda mais organizadas e explícitas. Veja este exemplo:


media = sum(notas) / len(notas)

if media >= 7:
    print("Aprovado")
elif media >= 5:
    print("Recuperacao")
else:
    print("Reprovado")

Neste código, a média é calculada e a situação do aluno é definida de forma sequencial, facilitando a leitura e manutenção do programa.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!