Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

3
respostas

[Projeto] Projeto Conta Bancária

Prezados,
Encaminho meu código antes de assistir as aulas da professora explicando como fazer, a fim de receber feedback da minha lógica.

import java.util.Scanner;

public class Contabancaria {
    public static void main(String[] args) {

        Scanner leitura = new Scanner(System.in);

        int saldoDaConta = 500;
        int valorDeDeposito = 0;
        int valorDeRetirada = 0;;
        int opcao;
        int menu1 = 1;
        int menu2 = 2;
        int menu3 = 3;
        int menu4 = 4;

        String dadosDaConta = """
         ********************************************
         BANCO JAVA
         Nome: Julio Java
         Tipo da Conta: Corrente
         Saldo da Conta """ + saldoDaConta +
        """
        
        *********************************************
                """;
     

        System.out.println(dadosDaConta);


            System.out.println("""
                                  
                                  Seja bem-vindo ao menu do Banco Java. 
                                  
                                  Digite o número referente a opção desejada:
                                  
                                  """);

            System.out.println("1-Consultar saldo");
            System.out.println("2-Receber valor");
            System.out.println("3-Transferir valor");
            System.out.println("4-Sair do menu");
             opcao = leitura.nextInt();

            if(opcao == menu1) {
                System.out.println("Seu saldo é: " + saldoDaConta);
            }
            else if ( opcao == menu2) {
                System.out.println("Digite o valor a ser recebido: " );
                valorDeDeposito = leitura.nextInt();
                System.out.println("Seu novo saldo é:"  + (saldoDaConta + valorDeDeposito));
            }
            else if ( opcao == menu3) {
                System.out.println("Digite o valor a ser transferido: " );
                valorDeRetirada = leitura.nextInt();
                System.out.println("Seu novo saldo é:" + (saldoDaConta - valorDeRetirada));
            }
            else if ( opcao == menu4) {
                System.out.println("Volte sempre que precisar! " );
            }
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
3 respostas

Olá Maria.
Excelente iniciativa.
Seu código está bem estruturado, legível e mostra que você entendeu bem a proposta do desafio.
Vamos fazer uma análise detalhada:
Pontos Positivos

  1. Organização e clareza:
    • O código está limpo, bem identado e com nomes de variáveis intuitivos.
    • O uso do text block (""" ... """) para o menu e dados da conta é ótimo — deixa o código mais legível.
  2. Uso correto do Scanner:
    • Você capturou as entradas do usuário de forma adequada (nextInt()).
  3. Estrutura condicional (if-else if):
    • Funciona corretamente para as opções de menu.
  4. Lógica básica funcionando:
    • Cada opção do menu executa o que se propõe.

Sugestões :

  1. Saldo não é atualizado de fato
    • O cálculo é mostrado, mas o valor do saldoDaConta não muda após depósito ou retirada.
    • Você pode resolver isso atribuindo o novo valor à variável saldoDaConta.
    saldoDaConta += valorDeDeposito;  // ao depositar
    saldoDaConta -= valorDeRetirada;  // ao transferir
    

Assim, o saldo vai sendo atualizado conforme as operações.

  1. Repetição do menu (laço de repetição)
    • Atualmente, o programa executa uma única operação e termina.
    • Para que o usuário possa fazer várias operações até escolher “Sair”, use um while:
    int opcao = 0;
    
    while (opcao != 4) {
        System.out.println("""
            \nMenu Banco Java
            1 - Consultar saldo
            2 - Receber valor
            3 - Transferir valor
            4 - Sair
            """);
    
        opcao = leitura.nextInt();
    
        if (opcao == 1) {
            System.out.println("Seu saldo é: " + saldoDaConta);
        } else if (opcao == 2) {
            System.out.println("Digite o valor a ser recebido: ");
            int valorDeDeposito = leitura.nextInt();
            saldoDaConta += valorDeDeposito;
            System.out.println("Seu novo saldo é: " + saldoDaConta);
        } else if (opcao == 3) {
            System.out.println("Digite o valor a ser transferido: ");
            int valorDeRetirada = leitura.nextInt();
            if (valorDeRetirada > saldoDaConta) {
                System.out.println("Saldo insuficiente!");
            } else {
                saldoDaConta -= valorDeRetirada;
                System.out.println("Seu novo saldo é: " + saldoDaConta);
            }
        } else if (opcao == 4) {
            System.out.println("Volte sempre que precisar!");
        } else {
            System.out.println("Opção inválida. Tente novamente.");
        }
    }
    

Isso torna seu programa interativo e mais próximo de um sistema real.

  1. Validação de entrada

    • Seria interessante verificar se o valor digitado é positivo antes de depositar ou transferir.
    • Exemplo:
      if (valorDeDeposito <= 0) {
          System.out.println("O valor deve ser positivo!");
      } else {
          saldoDaConta += valorDeDeposito;
      }
      
  2. Melhoria no tipo de dados

    • Para valores monetários, o ideal é usar double (ou BigDecimal em projetos reais).
    • Assim, você pode trabalhar com centavos.

Parabéns pela sua resolução.
Esta no caminho certo.
Continue compartilhando seu aprendizado com a gente.
E qualquer duvida comente ai.
Bons estudos.

Segue código com melhorias.

import java.util.Scanner;

public class Contabancaria {
    public static void main(String[] args) {


        double saldoDaConta = 500.00;
        double valorDeDeposito = 0;
        double valorDeRetirada = 0;
        int opcao = 0;


        String dadosDaConta = """
                ********************************************
                BANCO JAVA
                Nome: Julio Java
                Tipo da Conta: Corrente
                Saldo da Conta """ + saldoDaConta +
                """
                        
                        *********************************************
                        """;
        System.out.println(dadosDaConta);


        String menu = """
                Seja bem-vindo ao menu do Banco Java. 
                
                Digite o número referente a opção desejada:
                
                1-Consultar saldo
                2-Tranferir valor
                3-Receber valor
                4-Sair do menu
                """;
        Scanner leitura = new Scanner(System.in);

        while (opcao != 4) {
            System.out.println(menu);
            opcao = leitura.nextInt();

            if (opcao == 1) {
                System.out.println("Seu saldo é: " + saldoDaConta);}

            else if (opcao == 2) {
                System.out.println("Digite o valor a ser transferido: ");
                valorDeRetirada = leitura.nextDouble();
                System.out.println( "Seu novo saldo é:" + (valorDeRetirada-saldoDaConta));
                if (valorDeRetirada > saldoDaConta) {
                    System.out.println("Saldo insuficiente");
                } else {saldoDaConta -= valorDeRetirada; }
            }

            else if (opcao == 3) {
                System.out.println("Digite o valor a ser recebido: ");
                valorDeDeposito = leitura.nextDouble();
                if (valorDeDeposito <= 0) {
                    System.out.println("O valor deve ser positivo!");}
                else { System.out.println("Seu novo saldo é:" + (saldoDaConta + valorDeDeposito));}
            }
            
            else if (opcao == 4) {
                System.out.println("Volte sempre que precisar! ");
            }
            else if (opcao != 4) {
                System.out.println("Opção inválida");
            }
        }

    }
}

Obrigada desde já pelo apoio

Olá Maria.
Seu código já estava ótimo e agora ficou super.
Parabéns pela dedicação.
Continue nesse ritmo e o sucesso é garantido.
Obrigado por compartilhar.
Bons estudos.