Fala galera, fiz minha resolução como se fosse o usuario entrando em sua conta digital, Da uma olhada no codigo, se quiser testar, acho que ficou bem legal.
import java.util.Scanner;
public class DesafioBanco {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
int senhaValida = 123456;
int senhaDigitada;
double saldo = 85000.00;
String cliente = "Lucas";
System.out.println("* Banco Digital *");
System.out.println("Seja Bem-vindo(a) " + cliente + "!");
while (true) {
System.out.print("Digite sua senha: ");
senhaDigitada = teclado.nextInt();
if (senhaDigitada == senhaValida) {
System.out.println("Acesso liberado.");
while (true) {
System.out.println("Escolha uma opção:");
System.out.println("1. Extrato");
System.out.println("2. Depositar");
System.out.println("3. Sacar");
System.out.println("4. Sair");
int opcao = teclado.nextInt();
switch (opcao) {
case 1:
System.out.println("***** Extrato *****");
System.out.println("Nome do cliente: " + cliente);
System.out.println("Tipo de Conta: Corrente");
System.out.printf("Saldo Atual: R$ %.2f\n", saldo);
System.out.println("Data e hora da Consulta: " + java.time.LocalDateTime.now().format(java.time.format.DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss")));
break;
case 2:
System.out.print("Digite o valor a depositar: ");
double deposito = teclado.nextDouble();
saldo += deposito;
System.out.printf("Depósito realizado com sucesso! R$%.2f Adicionado ao saldo %n", deposito);
break;
case 3:
System.out.print("Digite o valor a sacar: ");
double saque = teclado.nextDouble();
if (saque > saldo) {
System.out.println("Saldo insuficiente!");
} else {
saldo -= saque;
System.out.printf("Saque realizado com sucesso! R$%.2f Retirado do saldo %n", saque);
}
break;
case 4:
System.out.println("Saindo...");
return;
default:
System.out.println("Opção inválida! Tente novamente.");
}
}
} else {
System.out.println("Senha incorreta! Tente novamente.");
}
}
teclado.close();
}
}