1
resposta

[Projeto] [Solução]Desafio final - Conta Bancária

import java.util.Scanner;

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

        String accountType;
        double balance = 0.0;
        double amount;

        System.out.print("Informe o nome do titular: ");
        String holderName = sc.nextLine();

        // menu para selecionar o tipo da conta
        System.out.println("1 - Corrente");
        System.out.println("2 - Poupança");
        System.out.print("Selecione o tipo da conta: ");
        int accountOption = sc.nextInt();

        switch (accountOption) {
            case 1:
                accountType = "Corrente";
                break;
            case 2:
                accountType = "Poupança";
                break;
            default:
                accountType = "Corrente";
        }

        // informações da conta do cliente
        System.out.println("*********************************************");
        System.out.println("Dados iniciais do cliente: ");
        System.out.println();

        System.out.printf("Nome: %s\n", holderName);
        System.out.printf("Tipo da conta: %s\n", accountType);
        System.out.printf("Saldo inicial: R$ %.2f\n", balance);
        System.out.println("*********************************************");


        // menu opções de operações
        int operationOptions = 1;

        while (operationOptions != 4) {
            System.out.println("Operações");
            System.out.println();

            System.out.println("1 - Consultar saldo");
            System.out.println("2 - Depositar valor");
            System.out.println("3 - Sacar valor");
            System.out.println("4 - Sair");
            System.out.println();

            System.out.print("Digite a opção desejada: ");
            operationOptions = sc.nextInt();

            switch (operationOptions) {
                case 1:
                    System.out.printf("O saldo atual é R$ %.2f\n", balance);
                    System.out.println();
                    break;
                case 2:
                    System.out.print("Informe o valor a ser depositado: ");
                    amount = sc.nextDouble();
                    balance += amount;

                    System.out.printf("Saldo atualizado R$ %.2f\n", balance);
                    System.out.println();
                    break;
                case 3:
                    System.out.print("Informe o valor a ser sacado: ");
                    amount = sc.nextDouble();

                    if(balance < amount) {
                        System.out.println("Saldo insuficiente");
                        break;
                    }

                    balance -= amount;
                    System.out.printf("Saldo atualizado R$ %.2f\n", balance);
                    System.out.println();
                    break;
                default:
                    System.out.println("Opção inválida");
                    System.out.println();
                    break;
            }
        }

        sc.close();
    }
}
1 resposta

Oi, Gabriel! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Curti como você estruturou o menu de operações com o loop while e o switch, deixando o fluxo de uso da conta bem organizado, e também a validação de saldo insuficiente com o if, que evita saques indevidos.

Uma dica interessante para o futuro e usar o metodo String.format para montar mensagens formatadas antes de exibir. Veja este exemplo:


public class ExemploFormat {
    public static void main(String[] args) {
        String nome = "Gabriel";
        double saldo = 1500.75;
        String mensagem = String.format("Ola, %s. Seu saldo e R$ %.2f", nome, saldo);
        System.out.println(mensagem);
    }
}

Esse código monta uma mensagem formatada em uma string e depois imprime no console, algo bem útil para deixar as saídas do seu programa mais organizadas.

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