Olá, tudo bem?
Segue sugestão de solução para a avaliação:
Program.cs
Console.WriteLine("Conta bancária:");
Titular titular = new Titular("Roberto", "000.000.000-00", "Endereço 1 ");
Conta conta = new Conta(titular, 123, 1234, 100, 10);
Console.WriteLine(conta.Informacoes);
Console.WriteLine("\n\nCatálogo de jogos:");
CatalogoDeJogos catalogo = new CatalogoDeJogos("Catálogo 1");
Jogo jogo1 = new Jogo(catalogo, "jogo 1", 2014, 20.00);
Jogo jogo2 = new Jogo(catalogo, "jogo 2", 2024, 120.00);
Jogo jogo3 = new Jogo(catalogo, "jogo 3", 2020, 90.00);
Jogo jogo4 = new Jogo(catalogo, "jogo 4", 2023, 110.00);
catalogo.AdicionarJogo(jogo1);
catalogo.AdicionarJogo(jogo2);
catalogo.AdicionarJogo(jogo3);
catalogo.AdicionarJogo(jogo4);
catalogo.ExibirJogosDaLista();
CatalogoDeJogos.cs
class CatalogoDeJogos
{
private List<Jogo> ListaDeJogos = new List<Jogo>();
public CatalogoDeJogos (string nome)
{
Nome = nome;
}
public string Nome { get; }
public void AdicionarJogo(Jogo jogo) {
ListaDeJogos.Add(jogo);
}
public void ExibirJogosDaLista()
{
Console.WriteLine($"Lista de jogos do catálogo {this.Nome}:");
foreach (var jogo in ListaDeJogos)
{
Console.WriteLine(jogo.Informacoes);
}
}
}
Jogo.cs
class Jogo
{
public Jogo (CatalogoDeJogos catalogo, string nome, int anoDeLancamento, double preco)
{
Catalogo = catalogo;
Nome = nome;
AnoDeLancamento = anoDeLancamento;
Preco = preco;
}
public CatalogoDeJogos Catalogo { get; }
public string Nome { get; }
public int AnoDeLancamento { get; }
public double Preco { get; }
public string Informacoes => $"Jogo: {this.Nome} | Ano de lançamento: {this.AnoDeLancamento} | Preço: {this.Preco}";
}