class Aluno { public string Nome { get; set; } public int Idade { get; set; } public List Notas { get; set; }
public void AdiconarNota(double nota)
{
if (nota >= 0 && nota <= 10)
{
Notas.Add(nota);
}
else
{
throw new Exception("A nota deve está entre 0 e 10");
}
}
public string MediaNota()
{
return Notas.Any() ? $"Médias de notas: {Notas.Average():F2}"
: "Nehuma nota cadastrada";
}
public Aluno(string nome, int idade)
{
Nome = nome;
Idade = idade;
Notas = new List<double>();
}
public void ExibirDados()
{
Console.WriteLine($"Nome: {Nome}\n" +
$"Idade: {Idade}\n" +
$"Notas: {(Notas.Any()? string.Join(",", Notas) : "Nenhuma nota adicionada")}\n" +
$"Média de notas: {MediaNota()}");
}
}
class Professor { public string Nome { get; set; } public Disciplina Disciplina { get; set; }
public Professor(string nome, Disciplina disciplina)
{
Nome = nome;
Disciplina = disciplina;
}
public void ExibirDados()
{
Console.WriteLine($"Nome: {Nome}\n" +
$"Discipla: {Disciplina.Nome}");
}
public void AdicionarDisciplina(Disciplina disciplina)
{
Disciplina = disciplina;
}
}
class Disciplina { public string Nome { get; set; } List Alunos { get; set; }
public Disciplina(string nome)
{
Nome = nome;
Alunos = new List<Aluno>();
}
public void AdicionarAluno(Aluno aluno)
{
Alunos.Add(aluno);
}
public void AdicionarVariosAlunos(LinkedList<Aluno> alunos)
{
Alunos.AddRange(alunos);
}
public void ExibirDados()
{
Console.WriteLine($"Disciplina - {Nome}\n");
if (Alunos.Any()) {
Console.WriteLine("Alunos matriculados:\n");
foreach (var aluno in Alunos)
{
Console.WriteLine($"- {aluno.Nome}");
}
}
else
{
Console.WriteLine("Não há alunos matriculados");
}
}
}