1
resposta

[Desafio] Meu exercicio sobre o desafio

Olá, venho trazendo a minha solução para o desafio

void MostrarMediaDaBanda()
{
    Console.Clear();
    ExibirTituloDaOpcao("Média das Bandas avaliadas.");
    Console.Write("\nDigite o nome da Banda que você deseja ver a média ?: ");
    string nomeDaBanda = Console.ReadLine()!;

    if (bandasRegistradas.ContainsKey(nomeDaBanda))
    {
        List<int> notaDaBanda = bandasRegistradas[nomeDaBanda];

        if (notaDaBanda.Count() > 0)
        {
            double mediaDaBanda = notaDaBanda.Average();

            Console.Clear();
            Console.WriteLine($"O valor médio da banda {nomeDaBanda} é {mediaDaBanda}");
        }
        else
        {
            Console.WriteLine($"A banda {nomeDaBanda} não possui nenhuma avaliação.");
        }
    }
    else
    {
        Console.WriteLine($"Não existe a banda com o nome {nomeDaBanda} no nosso sistema.");
    }

    Console.WriteLine("\nDigite qualquer tecla para continuar.");
    Console.ReadKey();
    Console.Clear();
    ExibirOpcoesDoMenu();

}

Tentei utilizar funções diferentes, variáveis diferentes, porém não deu certo, então fiz o básico e funcionou !

1 resposta

Olá, Patrick!

Parabéns pela realização do projeto!

Uma sugestão para melhorar o seu código é separar as responsabilidades em funções diferentes, assim como foi sugerido na aula. Por exemplo, você pode criar uma função para limpar o terminal, uma função para exibir o título, uma função para obter o nome da banda e uma função para calcular a média. Dessa forma, o seu código ficará mais organizado e mais fácil de entender.

Além disso, é importante verificar se você está utilizando o tipo de dado correto para a variável bandasRegistradas. Certifique-se de que bandasRegistradas é um dicionário que mapeia o nome da banda para uma lista de notas.

Aqui está um exemplo de como você pode organizar o seu código:

void MostrarMediaDaBanda()
{
    Console.Clear();
    ExibirTituloDaOpcao("Média das Bandas avaliadas");
    string nomeDaBanda = ObterNomeDaBanda();

    if (bandasRegistradas.ContainsKey(nomeDaBanda))
    {
        List<int> notaDaBanda = bandasRegistradas[nomeDaBanda];

        if (notaDaBanda.Count > 0)
        {
            double mediaDaBanda = CalcularMedia(notaDaBanda);

            Console.Clear();
            Console.WriteLine($"O valor médio da banda {nomeDaBanda} é {mediaDaBanda}");
        }
        else
        {
            Console.WriteLine($"A banda {nomeDaBanda} não possui nenhuma avaliação.");
        }
    }
    else
    {
        Console.WriteLine($"Não existe a banda com o nome {nomeDaBanda} no nosso sistema.");
    }

    Console.WriteLine("\nDigite qualquer tecla para continuar.");
    Console.ReadKey();
    Console.Clear();
    ExibirOpcoesDoMenu();
}

string ObterNomeDaBanda()
{
    Console.Write("\nDigite o nome da Banda que você deseja ver a média: ");
    return Console.ReadLine();
}

double CalcularMedia(List<int> notas)
{
    return notas.Average();
}

Espero que essas sugestões te ajudem a resolver o desafio. Lembre-se de sempre testar o seu código com diferentes casos de uso para garantir que ele está funcionando corretamente.

Bons estudos!