Olá, Marcelo! Bom dia, tudo bom?
Pelo que vejo no seu código, você está tentando exibir a média das notas de uma banda específica. No entanto, parece que há um pequeno equívoco na forma como você está calculando e exibindo a média. Vou te ajudar a corrigir isso.
No seu código atual, você está iterando sobre todas as bandas registradas e calculando a média para cada uma, mas está exibindo a média como se fosse apenas para a banda que o usuário digitou. O que você realmente precisa fazer é calcular e exibir a média apenas para a banda que o usuário solicitou. Vamos ajustar isso:
void ExibirMedia()
{
Console.Clear();
ExibirTituloDaOpcao("Mostrar média das bandas");
Console.Write("Digite o nome da banda que deseja ver a média: ");
string nomeDaBanda = Console.ReadLine()!;
if (BandasRegistradas.ContainsKey(nomeDaBanda))
{
// Calcula a média apenas para a banda solicitada
double media = BandasRegistradas[nomeDaBanda].Average();
Console.WriteLine($"A banda {nomeDaBanda} tem a média de {media}");
}
else
{
Console.WriteLine($"A banda {nomeDaBanda} não consta em nossa lista");
}
Console.WriteLine("Pressione uma tecla para voltar ao menu principal");
Console.ReadKey();
Console.Clear();
ExibirLogo();
ExibirOpcoesDoMenu();
}
Com essa alteração, o código agora verifica se a banda digitada pelo usuário está no dicionário BandasRegistradas
e, se estiver, calcula a média das notas apenas para essa banda específica. Espero que isso resolva seu problema!
Espero ter ajudado e bons estudos!