1
resposta

[Sugestão] Solução usando array e foreach

<?php

$titular = 'Vinicius';
$saldoAtual = 500.00;
$escolha = 0;

$options = [
    '1' => 'Consultar saldo atual',
    '2' => 'Sacar valor',
    '3' => 'Depositar valor',
    '4' => 'Sair',
];

echo "************\n".
     "Titular: $titular\n".
     "Saldo atual: R$ $saldoAtual\n".
     "************\n";

do {
    foreach ($options as $key => $value) {
            echo "$key. $value\n";
        }
 

switch ($options[$escolha] = (int) fgets(STDIN)) {
    case '1':
        echo "Seu saldo é de: $saldoAtual\n";
        break;

    case '2':
        echo "Digite o valor que deseja sacar: \n";
        $saque = (float) fgets(STDIN);
        if ($saque > $saldoAtual) {
            echo "Saldo insuficiente\n";
        } else {
            $saldoAtual -= $saque;
            echo "Seu saldo atual é de: $saldoAtual\n";
        }
        break;

    case '3':
        echo "Digite o valor que deseja depositar: \n";
        $deposito = (float) fgets(STDIN);
        $saldoAtual += $deposito;
        echo "Seu saldo atual é de: $saldoAtual\n";
        break;

    case '4':
        echo "Saindo...\n";
        break;
    
    default:
        echo "Opção inválida\n";
        break;
}
} while ($options[$escolha] != '4');
1 resposta

Olá Vinicius, tudo bem com você?

Executei seu código e tudo funcionou como esperado. Obrigado por compartilhar seu modo de resolução e raciocínio com a comunidade Alura.

Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!