1
resposta

Minha resolução

namespace Teste4_Alura.ExercicioOO;

internal class SegurancaConta
{
      public bool ValidarSaque(double valor)
  {

      if (valor > 1000)
      {
          return false;

      }
      else 
      {
          return true;
      }
      
      
      
        
    }
}
namespace Teste4_Alura.ExercicioOO;

internal class ContaBancaria
{
    SegurancaConta seguranca = new SegurancaConta();

    public string Titular {  get; set; }
    public double Saldo { get;}

    public ContaBancaria(string titular, double saldo)
    {
        Titular = titular;
        this.Saldo = saldo;
    }

    public double Sacar (double saldo)
    {
       double saldoAtual = Saldo - saldo;

       if(seguranca.ValidarSaque(saldo) == true)
       {
            Console.WriteLine($"""
                Nome: {Titular}
                Saque realizado com Sucesso
                "Saldo atual: {saldoAtual:c2}
                """);

            
       }

        if (seguranca.ValidarSaque(saldo) == false)
        {
            Console.WriteLine("Saque negado pela Politica de seguranca");
        }

       return saldoAtual;

    }

   
}
#region Desafio Validacao de saque
using Teste4_Alura.ExercicioOO;
ContaBancaria conta = new ContaBancaria("Carlos Silva", 2500);
conta.Sacar(1500);
conta.Sacar(800);

#endregion
1 resposta

Olá, Ulysses! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da composição para separar a lógica de segurança em uma classe dedicada, utilizou muito bem as propriedades para organizar os dados da conta bancária e ainda compreendeu a importância da validação de regras de negócio para garantir operações seguras.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!