1
resposta

[Dúvida] Fiz o código da seguinte forma.

Gostaria que assim que o "cliente" realizar uma ação ao invés de aparecer as opções novamente, o programa pergunta se o usuário deseja continuar ou ja encerrar o programa. Mais acredito que consegui consolidar os meus conhecimentos adiquiridos nessas aulas.

import java.util.Scanner;

public class Desafio {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String nomeCliente, tipoConta;
        double saldo = 0, valor = 0;
        int opcao = 0;
        String apresentacao = """
                       *****************************
                       Bem vindo ao seu banco digital!
                
                       Para começar, informe seu nome:
                       Informe o tipo de conta:
                       Informe o saldo  atual da conta:
                       *****************************
                
                """;

        // Inicio do programa
        System.out.println(apresentacao);
        System.out.println("Nome:");
        nomeCliente = scanner.nextLine();
        System.out.println("Tipo de conta:(corrente, salario, poupança)");
        tipoConta = scanner.nextLine();
        System.out.println("Saldo atual:");
        saldo = Double.parseDouble(scanner.nextLine());

        // Para o cliente se cadastrar pela primeira vez
        do {

            System.out.println("\nBem vindo " + nomeCliente + "!\n");
            System.out.println("+++++++++++++++++++++++++");
            System.out.println("Tipo de conta: " + tipoConta);
            System.out.println("Saldo atual: " + saldo);
            System.out.println("+++++++++++++++++++++++++");

            System.out.println("Digite 1 para vizualizar seu saldo: ");
            System.out.println("\nDigite 2 para fazer uma transferencia: ");
            System.out.println("\nDigite 3 para receber um valor:");
            System.out.println("\nDigite 4 para encerrar o programa:\n");
            opcao = scanner.nextInt();
            switch (opcao) {
                case 1:
                    System.out.println("*********************");
                    System.out.println("Saldo atual: " + saldo);
                    System.out.println("*********************");
                    break;
                case 2:
                    System.out.println("Informe o valor: " );
                    valor = scanner.nextDouble();
                    if (valor <= saldo){
                        saldo -= valor;
                        System.out.println("************************************");
                        System.out.println("Transferencia realizada com sucesso!");
                        System.out.println("************************************");

                    }else {
                        System.out.println("Saldo insuficiente!");
                    }break;
                case 3:
                    System.out.println("Valor a receber: ");
                    valor = scanner.nextDouble();
                    if (valor <= 0){
                        System.out.println("Não é possivel fazer a transferencia ou um valor negativo!");
                    }else {
                        System.out.println("************");
                        saldo += valor;
                        System.out.println("************");
                    }
                    break;
                case 4:
                    System.out.println("Encerrando programa...");
                    break;
                default:
                    System.out.println("Ocorreu um erro ao realizar o programa!");

            }
        }   while (opcao != 4);
            scanner.close();

    }
}





1 resposta

Olá Arthur! Tudo bem?

Que legal ver seu progresso com o projeto de criação da aplicação bancária!

Para implementar a funcionalidade de perguntar ao usuário se ele deseja continuar ou encerrar o programa após cada ação, você pode adicionar uma pergunta após cada operação dentro do loop. Vou te mostrar como você pode fazer isso:

Você pode incluir uma variável adicional para armazenar a decisão do usuário de continuar ou não. Veja como o código pode ficar:

import java.util.Scanner;

public class Desafio {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String nomeCliente, tipoConta;
        double saldo = 0, valor = 0;
        int opcao = 0;
        String continuar = "s"; // Variável para controlar a continuidade do programa
        String apresentacao = """
                       *****************************
                       Bem vindo ao seu banco digital!
                
                       Para começar, informe seu nome:
                       Informe o tipo de conta:
                       Informe o saldo  atual da conta:
                       *****************************
                
                """;

        // Inicio do programa
        System.out.println(apresentacao);
        System.out.println("Nome:");
        nomeCliente = scanner.nextLine();
        System.out.println("Tipo de conta:(corrente, salario, poupança)");
        tipoConta = scanner.nextLine();
        System.out.println("Saldo atual:");
        saldo = Double.parseDouble(scanner.nextLine());

        // Para o cliente se cadastrar pela primeira vez
        do {
            System.out.println("\nBem vindo " + nomeCliente + "!\n");
            System.out.println("+++++++++++++++++++++++++");
            System.out.println("Tipo de conta: " + tipoConta);
            System.out.println("Saldo atual: " + saldo);
            System.out.println("+++++++++++++++++++++++++");

            System.out.println("Digite 1 para visualizar seu saldo: ");
            System.out.println("\nDigite 2 para fazer uma transferência: ");
            System.out.println("\nDigite 3 para receber um valor:");
            System.out.println("\nDigite 4 para encerrar o programa:\n");
            opcao = scanner.nextInt();
            switch (opcao) {
                case 1:
                    System.out.println("*********************");
                    System.out.println("Saldo atual: " + saldo);
                    System.out.println("*********************");
                    break;
                case 2:
                    System.out.println("Informe o valor: ");
                    valor = scanner.nextDouble();
                    if (valor <= saldo) {
                        saldo -= valor;
                        System.out.println("************************************");
                        System.out.println("Transferência realizada com sucesso!");
                        System.out.println("************************************");
                    } else {
                        System.out.println("Saldo insuficiente!");
                    }
                    break;
                case 3:
                    System.out.println("Valor a receber: ");
                    valor = scanner.nextDouble();
                    if (valor <= 0) {
                        System.out.println("Não é possível fazer a transferência ou um valor negativo!");
                    } else {
                        saldo += valor;
                        System.out.println("************");
                        System.out.println("Saldo atualizado: " + saldo);
                        System.out.println("************");
                    }
                    break;
                case 4:
                    System.out.println("Encerrando programa...");
                    continuar = "n"; // Define como "n" para sair do loop
                    break;
                default:
                    System.out.println("Opção inválida!");
            }

            if (opcao != 4) {
                System.out.println("Deseja realizar outra operação? (s/n)");
                continuar = scanner.next();
            }

        } while (continuar.equalsIgnoreCase("s"));
        scanner.close();
    }
}

Com essa modificação, após cada operação, o programa perguntará ao usuário se ele deseja continuar ou não. Caso o usuário digite "n", o programa será encerrado. Espero que isso ajude a melhorar ainda mais sua aplicação!

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.