Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] A minha solução está correta?

<?php

enum ContaBancaria
{
    case ContaCorrente;
    case ContaInvestimento;
    case ContaPoupanca;
    case ContaUniversitaria;

    public funtion possuiTaxa(): bool
    {
        return $this === ContaBancaria::ContaCorrente || $this === ContaBancaria::ContaInvestimento;
    }



}

class Conta
{ 
    private int $saldo;

     public function __construct(
        public readonly string $titular,
        public readonly ContaBancaria $tipoConta        
    )
    {
       
        $this-> saldo = 0;

    }

    public function depositar (int valorDeposito): void
    {
        if ($valorDeposito > 0)
        {
            $this -> saldo += $valorDeposito;
        }
    }

    public function sacar (int valorSaque): void
    {
        if ($valorSaque > 0 && $valorSaque<= $this -> saldo)
        {
            $this -> saldo -= $valorSaque;
        }
    }
}

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
2 respostas
solução!

Olá, Luciana! Tudo bem?

Parabéns pela sua solução! Ficou excelente e muito bem estruturada, mostrando que você realmente entendeu os conceitos de Orientação a Objetos em PHP.

A lógica está toda certinha! Encontrei só dois errinhos de digitação bem pequenos que podem impedir o código de rodar.
Na primeira linha, faltou um espaço depois da tag do PHP. O correto seria <?php enum.... E no método possuiTaxa, a palavra function foi digitada como funtion.

Mas relaxa, isso é só um detalhe de estilo, a sua forma com || também está 100% correta!No geral, sua solução está perfeita. Continue se dedicando nos estudos!

Sucesso

Imagem da comunidade

Obrigada !!