Olá, Ronald!
Pela descrição na postagem, você está com dificuldades em lidar com o caso em que uma banda não possui valores registrados, e o código acaba quebrando.
Uma forma de lidar com essa situação é verificar se a banda existe no dicionário bandasRegistradas
antes de tentar calcular a média. Você já está fazendo essa verificação com bandasRegistradas.ContainsKey(nomeDaBanda)
, o que é ótimo! Agora, vamos adicionar um novo trecho de código dentro do if
para tratar o caso em que a banda não possui valores registrados.
if (bandasRegistradas.ContainsKey(nomeDaBanda))
{
var notasDaBanda = bandasRegistradas[nomeDaBanda];
if (notasDaBanda.Count > 0)
{
var banda = notasDaBanda.Average();
Console.WriteLine($"\nA média da {nomeDaBanda} é: {banda} ");
}
else
{
Console.WriteLine($"A banda {nomeDaBanda} não possui valores registrados.");
}
Console.WriteLine("Digite qualquer tecla para voltar ao menu iniciar");
Console.ReadKey();
Console.Clear();
ExibirOpcoesDoMenu();
}
else
{
Console.WriteLine($"A banda {nomeDaBanda} não existe");
Console.WriteLine("Digite qualquer tecla para voltar ao menu principal");
Console.ReadKey();
Console.Clear();
ExibirOpcoesDoMenu();
}
No trecho de código acima, adicionamos um novo if
logo após pegar a lista de notas da banda (var notasDaBanda = bandasRegistradas[nomeDaBanda]
). Dentro desse novo if
, verificamos se a lista notasDaBanda
possui algum elemento usando notasDaBanda.Count > 0
. Se a lista estiver vazia, exibimos a mensagem informando que a banda não possui valores registrados. Caso contrário, continuamos com o cálculo da média e exibição normalmente.
Bons estudos!