1
resposta

[Projeto] Desafio Conta Bancária

import java.util.InputMismatchException;
import java.util.Scanner;

public class App {
    public static void mostrarDadosDoCliente(String cliente, String tipoConta, double saldo) {
        System.out.printf("Cliente: %s\nConta: %s\nSaldo: R$ %.2f\n\n", cliente, tipoConta, saldo);
    }

    public static void consultarSaldo() {
        System.out.println(
                "\n\nOPERAÇÕES\n\n1-Consultar saldos\n2-Receber valor\n3-Transferir valor\n4-Sair\n\nDigite a opção desejada:");
    }

    public static String formatarSaldo(double saldo) {
        return String.format("%.2f", saldo);
    }

    public static double receberTransferencia(double valor, double saldo) {
        saldo += valor;
        return saldo;
    }

    public static double transferirValor(double valor, double saldo) {
        if (valor > saldo) {
            System.out.println("Saldo insuficiente para realizar a transferência.");
            return saldo;
        }

        saldo -= valor;
        return saldo;
    }

    public static void main(String[] args) throws Exception {
        Scanner scanner = new Scanner(System.in);

        // Inicialização dos dados iniciais do cliente
        String cliente = "Jhon Doe";
        String tipoConta = "Corrente";
        double saldo = 2500.00;

        int opcao = 0;

        System.out.println("DADOS INICIAIS DO CLIENTE:");
        mostrarDadosDoCliente(cliente, tipoConta, saldo);

        while (opcao != 4) {
            consultarSaldo();

            try {
                opcao = scanner.nextInt();

                switch (opcao) {
                    case 1:
                        System.out.println("\nSaldo atual: R$ " + formatarSaldo(saldo));
                        break;
                    case 2:
                        System.out.println("Informe o valor a ser recebido:");
                        double valor = scanner.nextDouble();

                        saldo = receberTransferencia(valor, saldo);
                        System.out.println("\nSaldo atualizado: R$ " + formatarSaldo(saldo));

                        break;
                    case 3:
                        System.out.println("Informe o valor a ser transferido:");
                        double valorTransferencia = scanner.nextDouble();

                        saldo = transferirValor(valorTransferencia, saldo);
                        System.out.println("\nSaldo atualizado: R$ " + formatarSaldo(saldo));

                        break;
                    case 4:
                        System.out.println("\nSaindo...");
                        scanner.close();

                        break;
                    default:
                        System.out.println("\nOpção inválida");
                        break;
                }
            } catch (InputMismatchException e) {
                System.out.println("\nOpção inválida. Digite uma opção válida!\n");
                scanner.nextLine();
                opcao = 0;
            }
        }
    }
}
1 resposta

Olá, Juscelia! Tudo bem?

Excelente código, parabéns pelo projeto! Espero que esteja gostando do curso! Colocar em execução as atividades propostas pelo professor em aula é uma prática muito importante para internalizarmos o conteúdo. Caso tenha ficado alguma dúvida em relação ao curso ou atividade, sinta-se à vontade em comunicar, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!