static void Main(string[] args) { Aluno[] alunos = new Aluno[5]; int indiceAluno = 0; String opcaoUsuario; opcaoUsuario = ObterOpcaoUsuario(); while (opcaoUsuario.ToUpper() != "X") { Console.WriteLine(); switch (opcaoUsuario) { case "1": Console.WriteLine("Informe o nome do aluno: "); Aluno aluno = new Aluno(); aluno.Nome = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("Informe a nota do aluno"); if (Decimal.TryParse(Console.ReadLine(), out decimal nota)) { aluno.Nota = nota; } else { throw new ArgumentException("Valor da nota deve ser decimal"); } alunos[indiceAluno] = aluno; indiceAluno++; break; case "2": Console.WriteLine(""); Console.WriteLine("Alunos"); Console.WriteLine(""); foreach (var a in alunos) { if (!string.IsNullOrEmpty(a.Nome)) { Console.WriteLine($"Aluno: {a.Nome} \t Nota: {a.Nota}"); } } Console.WriteLine(""); Console.WriteLine("Pressione qualquer tecla para continuar..."); Console.ReadLine(); break; case "3": decimal NotaTotal = 0; var QtdeAlunos = 0; for (int i = 0; i < alunos.Length; i++) { if (!string.IsNullOrEmpty(alunos[i].Nome)) { NotaTotal += alunos[i].Nota; QtdeAlunos++; } } if (QtdeAlunos != 0) { var Media = NotaTotal / QtdeAlunos; ConceitoEnum conceitoGeral = ConceitoEnum.E; Console.WriteLine(); if (Media < 3) { conceitoGeral = ConceitoEnum.E; } else if (Media >= 3 && Media < 6) { conceitoGeral = ConceitoEnum.D; } else if (Media >= 5 && Media < 8) { conceitoGeral = ConceitoEnum.C; } else if (Media >= 8 && Media < 10) { conceitoGeral = ConceitoEnum.B; } else if (Media == 10) { conceitoGeral = ConceitoEnum.A; } Console.WriteLine($"Media total dos alunos: {Media.ToString("N1")} \t Conceito: {conceitoGeral}"); Console.WriteLine(); Console.WriteLine("Pressione qualquer tecla para continuar..."); Console.ReadLine(); } else { Console.WriteLine(); Console.WriteLine("Não há alunos cadastrados."); Console.WriteLine(); Console.WriteLine("Pressione qualquer tecla para continuar..."); Console.ReadLine(); } break; default: throw new ArgumentOutOfRangeException(); } opcaoUsuario = ObterOpcaoUsuario(); } }
static void Main(string[] args) { string opcao; Aluno[] alunos = new Aluno[5]; int indice = 0; do { ShowMenu(); opcao = Console.ReadLine(); switch (opcao) { case "1": Console.Clear(); var aluno = new Aluno(); Console.Write("Informe o nome do aluno: "); aluno.Nome = Console.ReadLine(); Console.Write("Informe a nota do aluno: "); if (decimal.TryParse(Console.ReadLine(), out decimal nota)) { aluno.Nota = nota; } else { throw new ArgumentException("O valor da nota deve ser numérico."); } alunos[indice] = aluno; indice++; break; case "2": Console.Clear(); foreach (var alun in alunos) { if (!string.IsNullOrEmpty(alun.Nome)) { Console.WriteLine("\nNome: " + alun.Nome + " / Nota: " + alun.Nota); } } Console.WriteLine("\n Pressione Enter para continuar."); Console.ReadLine(); break; case "3": decimal notaTotal = 0; var numeroAlunos = 0; Console.Clear(); for (int i = 0; i < alunos.Length; i++) { if (!string.IsNullOrEmpty(alunos[i].Nome)) { notaTotal += alunos[i].Nota; numeroAlunos++; } } var mediaGeral = (notaTotal / numeroAlunos); ConceitoEnum conceitoGeral = 0; if (mediaGeral <= 2) { conceitoGeral = ConceitoEnum.E; } else if (mediaGeral > 2 && mediaGeral <= 4) { conceitoGeral = ConceitoEnum.D; } else if (mediaGeral > 4 && mediaGeral <= 6) { conceitoGeral = ConceitoEnum.C; } else if (mediaGeral > 6 && mediaGeral <= 8) { conceitoGeral = ConceitoEnum.B; } else if (mediaGeral > 8) { conceitoGeral = ConceitoEnum.A; } Console.Write($"A média geral dos alunos é de : {mediaGeral}"); Console.Write($"\nConceito geral: {conceitoGeral}"); Console.WriteLine("\n Pressione Enter para continuar."); Console.ReadLine(); break; case "X" or "x": Console.Clear(); Console.Write("Finalizando programa."); break; default: throw new ArgumentOutOfRangeException("Valor informado além do esperado!"); } } while (opcao.ToUpper() != "X"); }