1
resposta

[Projeto] MInha resolução

Minha resolução do projeto final:

import java.util.Scanner;

public class AppBank { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int commandMenu = 0; double depositValue; double withDrawValue; String nameClient = "Matt Galss Romeu"; String accType = "Corrente"; double budgetClient = 5000; String initialMenu = """ *************************** MGR BANK

            NAME:  %s
            TIPO CONTA:  %s
            SALDO: R$ %.2f    
            """  .formatted(nameClient, accType, budgetClient);
    String menu = """
            ***************************
                    MGR BANK

            1 - Consultar Saldo
            2 - Depósito
            3 - Saque
            4 - Sair    
            """;
    System.out.println(initialMenu);    
        
    while (commandMenu != 4) {
    System.out.println(menu);
    commandMenu = scanner.nextInt();
        
        switch (commandMenu) {
            case 1:
                System.out.println(budgetClient); 
                System.out.println("O seu saldo é de: R$" + budgetClient);                   
                break;
            case 2: 
                System.out.println("Qual o valor do depósito?");
                depositValue = scanner.nextDouble();
                budgetClient = budgetClient + depositValue;
                System.out.println("Saldo atualizado para: R$" + budgetClient);                                     
                break;
            case 3:
                System.out.println("Qual o valor do saque?");
                withDrawValue = scanner.nextDouble();
                budgetClient = budgetClient - withDrawValue;
                System.out.println("Saldo atualizado para: R$" + budgetClient);  
                break;
            default: 
                System.out.println("Opção inválida");
        
        }
        
    }
    scanner.close();
}

}

1 resposta

Olá, Matheus. Tudo bem?

Parece que você fez um ótimo trabalho com seu código! A estrutura do seu programa está bem organizada e clara.

No entanto, percebi que você poderia fazer uma pequena melhoria em seu código. No case 3, onde você implementa a funcionalidade de saque, seria interessante adicionar uma verificação para garantir que o usuário não possa sacar mais dinheiro do que ele tem em sua conta.

Aqui está um exemplo de como você pode fazer isso:

case 3:
    System.out.println("Qual o valor do saque?");
    withDrawValue = scanner.nextDouble();
    if (withDrawValue > budgetClient) {
        System.out.println("Saldo insuficiente para realizar o saque.");
    } else {
        budgetClient = budgetClient - withDrawValue;
        System.out.println("Saldo atualizado para: R$" + budgetClient);  
    }
    break;

Neste exemplo, antes de realizar o saque, o programa verifica se o valor do saque é maior que o saldo atual do cliente (budgetClient). Se for, ele informa ao usuário que ele não tem saldo suficiente. Se não for, ele realiza o saque normalmente.

Espero ter ajudado e bons estudos!