1
resposta

[Projeto] Desafio final

Nesse desafio, optei por utilizar switch case. Fico aberto a correções e melhoria, obrigado.

import java.util.Scanner;

public class ContaBancaria{
    public static void main(String args[]){
        
        Scanner digite = new Scanner(System.in);
        String nome;
        System.out.println("Digite seu nome completo: ");
        nome=digite.nextLine();
        
        String tipoConta;
        System.out.println("Digite o tipo da sua conta(Corrente ou Poupança): ");
        tipoConta=digite.nextLine();
        
        double saldoInicial;
        System.out.println("Qual seu saldo inicial: ");
        saldoInicial = digite.nextDouble();
        
        String mensagem = """
        ***********************
        Dados iniciais do cliente:
         
        Nome: %s
        Tipo conta: %s
        Saldo inicial: %.2f
        ***********************
        """.formatted(nome, tipoConta, saldoInicial);
        
        System.out.print(mensagem);
         
        int opcao=0;
        double recebePix=0;
        double valorAtualizado=0;
        double valorTransferido=0;
        boolean continuar=true;
        while(continuar){
        System.out.println("""
        Operações

        1- Consultar saldos
        2- Receber valor
        3- Transferir valor
        4- Sair

        Digite a opção desejada:
        """);
        opcao=digite.nextInt();

        switch(opcao){
            case 1:
                System.out.println("Seu saldo é de: " + valorAtualizado);
                break;
            case 2:
                System.out.println("Informe o valor a receber: ");
                recebePix = digite.nextDouble();
                valorAtualizado = recebePix + saldoInicial;
                System.out.println ("Saldo atualizado R$ " + valorAtualizado);
                break;
            case 3:
                System.out.println("Informe o valor que deseja transferir: ");
                valorTransferido = digite.nextDouble();
                valorAtualizado = valorAtualizado - valorTransferido;
                System.out.println ("Saldo atualizado R$ " + valorAtualizado);
                break;
            case 4:
                continuar=false;
                System.out.print("Operação finalizada. Até a próxima!");
                break;
            default:
                System.out.print("Opção inválida. Digite um número entre 1 e 4.");
        
    }
}
}
}
1 resposta

Oi, Abner! Tudo bem?

Ótimo código, parabéns pela dedicação e elaboração dele! Obrigada também por tê-lo compartilhado com a nossa comunidade do fórum, tenho certeza que ajudará muitos colegas!

Uma sugestão interessante que pode incrementar o nosso projeto é a verificação se há saldo suficiente, antes de realizar a transferência, para evitar que o saldo fique negativo:

if (valorTransferido <= valorAtualizado) {
    valorAtualizado -= valorTransferido;
    System.out.println("Saldo atualizado R$ " + valorAtualizado);
} else {
    System.out.println("Saldo insuficiente para realizar a transferência.");
}

Caso surja alguma dúvida, sinta-se à vontade em comunicar por aqui, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!