Criar um construtor para a classe Titular, que inicialize todas suas propriedades
class Titular2
{
public Titular2(string nome, string cpf, string endereco)
{
Nome = nome;
Cpf = cpf;
Endereco = endereco;
}
public string? Nome { get; }
public string? Cpf { get; }
public string? Endereco { get; }
}
Criar um construtor para a classe Conta, que inicialize todas suas propriedades
class Conta2
{
public Titular2 Titular { get; }
public int Agencia { get; }
public int NumeroDaConta { get; }
public double Saldo { get; }
public double Limite { get; }
public string Informacoes => $"Conta nº {this.NumeroDaConta}, Agência {this.Agencia}, Titular: {this.Titular.Nome} - Saldo: {this.Saldo}";
public Conta2(Titular2 titular, int agencia, int numerodaconta, double saldo, double limite)
{
Titular = titular;
Agencia = agencia;
NumeroDaConta = numerodaconta;
Saldo = saldo;
Limite = limite;
}
public void ExibirDetalhes ()
{
Console.WriteLine($"Nome Titular: {Titular.Nome}");
Console.WriteLine($"CFP do Titular: {Titular.Cpf}");
Console.WriteLine($"Endereço do Titular: {Titular.Endereco}");
Console.WriteLine($"Agência: {Agencia}");
Console.WriteLine($"Número Da Conta: {NumeroDaConta:D3}");
Console.WriteLine($"Saldo: {Saldo}");
Console.WriteLine($"Limite: {Limite}");
}
}
Instanciar uma Conta e exibir suas informações na tela, utilizando construtores.
var usuario = new Titular2("Sunny", "000.000.000-00", "Empire State Street");
var conta = new Conta2(usuario, 777, 001, 2000.0, 3000.0);
Console.WriteLine($"{conta.Informacoes}\n");
//ou
conta.ExibirDetalhes();
Desenvolver uma classe que representa um catálogo de jogos, com uma lista de Jogos
e métodos para manipular essa lista, bem como um construtor que faça sua
inicialização.
class Jogos
{
public Jogos(string nome, string genero, int anoLancamento, decimal preco)
{
Nome = nome;
Genero = genero;
AnoLancamento = anoLancamento;
Preco = preco;
}
public string Nome { get; }
public string Genero { get; }
public int AnoLancamento { get; }
public decimal Preco { get; }
}
class CatalogoJogoss
{
public CatalogoJogoss()
{
CatalogoJogos = new List<Jogos> ();
}
public List<Jogos> CatalogoJogos { get; set; }
public bool CatalogoVazio => CatalogoJogos.Count == 0;
public void AdicionarJogo(string nome, string genero, int anolancamento, decimal preco)
{
Jogos novoJogo = new Jogos(nome, genero, anolancamento, preco);
CatalogoJogos.Add(novoJogo);
Console.WriteLine($"Jogo {novoJogo.Nome} adicionado com sucesso!\n");
}
public void RemoverJogo(string nome)
{
Jogos? jogo = CatalogoJogos.FirstOrDefault(game => game.Nome == nome);
if (jogo != null)
{
CatalogoJogos.Remove(jogo);
}
else
{
Console.WriteLine("Jogo não encontrado!");
}
}
public void ExibirCatalogo ()
{
if (CatalogoVazio)
{
Console.WriteLine("\nNão existe nenhum jogo no catálogo atualmente.");
}
else
{
Console.WriteLine("Catálogo de jogos abaixo: \n");
foreach (Jogos jogo in CatalogoJogos)
{
Console.WriteLine($"Nome: {jogo.Nome}");
Console.WriteLine($"Gênero: {jogo.Genero}");
Console.WriteLine($"Ano de Lançamento: {jogo.AnoLancamento}");
Console.WriteLine($"Preço: ${jogo.Preco}\n");
}
}
}
}
Program.cs
var jogoA = new CatalogoJogoss();
Console.Clear();
jogoA.ExibirCatalogo();
Thread.Sleep(4000);
Console.Clear();
jogoA.AdicionarJogo("Doom", "Ação", 2001, 120.99m);
jogoA.AdicionarJogo("God of War", "Ação", 2015, 200.99m);
jogoA.ExibirCatalogo();