1
resposta

Desafio Extrato Bancário

import java.util.Scanner;

public class Conta {
public static void main(String[] args) {
Scanner aberturaConta = new Scanner(System.in);

    System.out.println("Bem-Vindo ao Bank Java");

    System.out.println("Qual seu Nome Completo: ");
    String nome = aberturaConta.nextLine();

    System.out.println("Qual tipo de conta (Corrente) ou (Poupança)");
    String tipoConta = aberturaConta.nextLine();
    while (!tipoConta.equalsIgnoreCase("Corrente") && !tipoConta.equalsIgnoreCase("Poupança")){
        System.out.println("Opção Inválida! Digite apenas (Corrente) ou (Poupança)");
        tipoConta = aberturaConta.nextLine();
    }

    System.out.println("Qual valor do deposito inicial (sem virgula): ");
    double saldoConta = aberturaConta.nextDouble();



    int opcao = 0;
    String menu = """
            ** Digite sua opção **
            1 - Consultar saldo
            2 - Sacar valor
            3 - Receber valor
            4 - Transferir valor
            5 - Sair
            """;
    Scanner leitura = new Scanner(System.in);

    while (opcao != 5){
        System.out.println("\n");
        System.out.println(menu);
        opcao = leitura.nextInt();

        if (opcao == 1){
            System.out.println("\n********** Extrato ***********");
            System.out.println("\n Nome do Cliente: " + nome);
            System.out.println("\n Tipo da Conta: " + tipoConta);
            System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
            System.out.println("\n***************************************\n");

        }if (opcao == 2){
            System.out.println("Qual valor que deseja sacar: ");
            double saque = leitura.nextDouble();

            if (saque <= saldoConta){
                saldoConta -= saque;
                System.out.println("Saque realizado com sucesso");
                System.out.println("\n********** Extrato ***********");
                System.out.println("\n Nome do Cliente: " + nome);
                System.out.println("\n Tipo da Conta: " + tipoConta);
                System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
                System.out.println("\n***************************************\n");
            }else {
                System.out.println("Saldo insuficiente.");
                System.out.println("\n********** Extrato ***********");
                System.out.println("\n Nome do Cliente: " + nome);
                System.out.println("\n Tipo da Conta: " + tipoConta);
                System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
                System.out.println("\n***************************************\n");

            }
        }

        if (opcao == 3){
            System.out.println("Qual valor irá receber: ");
            double valorRecebido =  leitura.nextDouble();
            saldoConta += valorRecebido;
            System.out.println("\n********** Extrato ***********");
            System.out.println("\n Nome do Cliente: " + nome);
            System.out.println("\n Tipo da Conta: " + tipoConta);
            System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
            System.out.println("\n***************************************\n");
        }

        if (opcao == 4){
            System.out.println("Qual valor deseja transferir: ");
            double transferir = leitura.nextDouble();
            saldoConta -= transferir;
            System.out.println("\n********** Extrato ***********");
            System.out.println("\n Nome do Cliente: " + nome);
            System.out.println("\n Tipo da Conta: " + tipoConta);
            System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
            System.out.println("\n***************************************\n");
        }

    }

    System.out.println("\n********** Extrato ***********");
    System.out.println("\n Nome do Cliente: " + nome);
    System.out.println("\n Tipo da Conta: " + tipoConta);
    System.out.println("\n Saldo: " + String.format("%.2f", saldoConta));
    System.out.println("\n***************************************\n");




}

}

1 resposta

Olá, Kleber! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da classe Scanner para capturar entradas com Java, utilizou muito bem a estrutura de repetição while para validar opções e ainda compreendeu a importância da formatação de saída com String.format para apresentar valores monetários.

Uma dica interessante para o futuro é extrair o menu para um método separado, tornando o código mais organizado. Assim:

public static void exibirMenu() {
    String menu = """
            ** Digite sua opção **
            1 - Consultar saldo
            2 - Sacar valor
            3 - Receber valor
            4 - Transferir valor
            5 - Sair
            """;
    System.out.println(menu);
}

Isso vai fazer a manutenção do código ficar mais clara e evita repetições.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!