1
resposta

Codigo Bancario

Utilezei switch case para evitar a repetição do if e deixar o codigo mais limpo

import java.util.Scanner;

public class ContaBancaria {
    public static void main(String[] args) {
        String nome="Leonardo Rossin Silva";
        String tipoConta="Corrente";
        double saldo=1000;
        int opcao=0;
        Scanner escolha=new Scanner(System.in);
        Scanner valorDigitado=new Scanner(System.in);
        double valor=0;
        double total=0;


        System.out.println("******************************************");
        System.out.println("NOME :"+nome);
        System.out.println("Tipo de conta :"+tipoConta);
        System.out.println("Saldo R$: "+saldo);
        System.out.println("******************************************");

        System.out.println("""
                OPERAÇÕES
                
                1-Consultar Saldo
                2-Receber Valor 
                3-Transferir valor 
                4-Sair
                """);


        while (opcao!=4){

        opcao=escolha.nextInt();
        switch (opcao) {
            case 1:
                System.out.println("Seu saldo atual é de R$:"+saldo);
                break;
            case 2:
                System.out.println("Digite o valor");
                valor=valorDigitado.nextDouble();
                total = saldo+valor;
                System.out.println("Seu saldo atual é de R$"+total);
                break;
            case 3:
                System.out.println("Digite o valor");
                valor=valorDigitado.nextDouble();
                if (valor>saldo){
                    System.out.println("Você não possui saldo suficiente !");
                } else if (valor<=saldo) {total = saldo-valor;
                    System.out.println("Seu saldo atual é de R$"+total);
                    break;

                }

            case 4:
                System.out.println("Encerrando programa,Até logo");
                break;
            default:
                System.out.println("Opção inválida");}


        }

     }



    }
    
1 resposta

Olá, Leonardo! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso do switch case para organizar melhor as opções do menu, utilizou muito bem o Scanner para capturar entradas do usuário e ainda compreendeu a importância de controlar o fluxo de operações bancárias de forma clara e estruturada.

Um ajuste necessário é atualizar o valor do saldo dentro das operações, garantindo que ele seja persistido corretamente. Assim:

case 2:
    System.out.println("Digite o valor");
    valor = valorDigitado.nextDouble();
    saldo += valor; // atualiza o saldo
    System.out.println("Seu saldo atual é de R$" + saldo);
    break;

case 3:
    System.out.println("Digite o valor");
    valor = valorDigitado.nextDouble();
    if (valor > saldo) {
        System.out.println("Você não possui saldo suficiente!");
    } else {
        saldo -= valor; // atualiza o saldo
        System.out.println("Seu saldo atual é de R$" + saldo);
    }
    break;

Isso faz com que o programa reflita corretamente as operações realizadas, evitando inconsistências no saldo exibido.

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!