public static void Main()
Cliente nomCli = new Cliente();
ContaPoupanca n2 = new ContaPoupanca();
TotalizadorDeContas t1 = new TotalizadorDeContas();
Conta c3 = new ContaPoupanca();
Console.WriteLine("========================================================================");
Console.WriteLine("-------------------Bem-vindo ao Banco Falcatrua-------------------------");
Console.WriteLine("========================================================================");
int escolhaOpcao = Convert.ToInt32(Console.ReadLine());
Console.Write("Escolha 1 para depósito em Conta Corrente, 2 para Conta Poupanca ou 3 para voltar as opçoes anteriores");
int deCorPou = Convert.ToInt16(Console.ReadLine());
Console.Write("A seguir digite um valor para depositar: R$");
n1.Deposita(Convert.ToDouble(Console.ReadLine()));
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.Write("A seguir digite um valor para depositar na conta poupança: R$");
n2.Deposita(Convert.ToDouble(Console.ReadLine()));
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.Write("Escolha 1 para saque em Conta Corrente, 2 para Conta Poupanca ou 3 para voltar as opçoes anteriores");
int saqCorPou = Convert.ToInt16(Console.ReadLine());
Console.Write("A seguir digite um valor para sacar: R$");
n1.Saca(Convert.ToDouble(Console.ReadLine()));
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.Write("A seguir digite um valor para sacar: R$");
n2.Saca(Convert.ToDouble(Console.ReadLine()));
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.Write("Escolha 1 para saque em Conta Corrente, 2 para Conta Poupanca ou 3 para voltar as opçoes anteriores");
int salCorPou = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Seu saldo é de R${0}", n1.Saldo);
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.WriteLine("Seu saldo é de R${0}", n2.Saldo);
Console.Write("Deseja continuar? [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
Console.WriteLine("Pressione S para Continuar e N para sair [S/N]");
resposta = Convert.ToChar(Console.ReadLine());
}while (resposta == 's');
Console.WriteLine("Obrigado por utiilzar nossos serviços.");
public static void Opcoes()
Console.WriteLine("\nEscolha uma opção abaixo:\n");
Console.WriteLine("1 - Depósito");
Console.WriteLine("2 - Saque");
Console.WriteLine("3 - Saldo");
Console.WriteLine("4 - Sair");
public string Nome { get; set;}
public double Saldo { get; private set;}
public int Numero { get; set;}
public Cliente Titular { get; set; }
public virtual void Saca(double valor)
if ((valor > 0) & (Saldo > valor))
Console.WriteLine("Saque realizado com sucesso. Saldo R${0}", this.Saldo);
Console.WriteLine("Operação não permitida. Saldo R${0}", this.Saldo);
public void Deposita(double valor)
Console.WriteLine("Deposito realizado com sucesso. Saldo R${0}", this.Saldo);
Console.WriteLine("Operação não permitida. Saldo R${0}", this.Saldo);
public class ContaPoupanca : Conta
public override void Saca(double valor)
public class TotalizadorDeContas
public double ValorTotal { get; private set; }
public void Soma(Conta n1)