1
resposta

Desafio: hora da prática - Aplicando Projetos

**5. Pontuação de skatistas**

def pontuacao_skatista(notas: list) -> float:
    """
    Calcula a pontuação de um(a) skatista a partir de 5 notas.

    Regras:
    - Elimina a maior e a menor nota
    - Calcula a média das 3 notas restantes

    Parâmetros
    ----------
    notas : list
        Lista contendo exatamente 5 notas atribuídas pelos jurados.

    Retorno
    -------
    float
        Média das 3 notas consideradas.
    """
    # remove maior e menor
    notas.remove(max(notas))
    notas.remove(min(notas))
    media = sum(notas) / len(notas)
    return media


**6. Análise de desempenho de estudantes**


def desempenho_estudante(notas: list) -> tuple:
    """
    Analisa o desempenho de um(a) estudante com base em 4 notas.

    Parâmetros
    ----------
    notas : list
        Lista contendo 4 notas do(a) estudante.

    Retorno
    -------
    tuple
        (maior nota, menor nota, média, situação)
        Situação: "Aprovado(a)" se média >= 7, caso contrário "Reprovado(a)".
    """
    maior = max(notas)
    menor = min(notas)
    media = sum(notas) / len(notas)
    situacao = "Aprovado(a)" if media >= 7 else "Reprovado(a)"
    return maior, menor, media, situacao
1 resposta

Oi Penha, como vai?

Agradeço por compartilhar.

Você aplicou muito bem a lógica dos dois projetos, usando funções com retorno, cálculo de média, max(), min() e uma condição com operador ternário para definir a situação do(a) estudante. As docstrings também ficaram bem completas, explicando as regras, os parâmetros e o retorno de cada função.

Pensando nos dois exercícios, qual parte você achou mais interessante: eliminar notas para calcular a pontuação ou retornar várias informações em uma tupla?

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