import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Olá, seja bem-vindo! Para realizar operações, você deve inicializar sua conta.");
// Dados do cliente
System.out.print("Digite seu nome: ");
String nomeCliente = sc.nextLine();
// Validar tipo de conta
int tipoContaNumero;
String tipoConta;
while (true) {
System.out.println("""
Informe seu tipo de conta:
1 - Poupança
2 - Corrente
""");
tipoContaNumero = sc.nextInt();
if (tipoContaNumero == 1) {
tipoConta = "Poupança";
break;
} else if (tipoContaNumero == 2) {
tipoConta = "Corrente";
break;
} else {
System.out.println("Opção inválida. Tente novamente.");
}
}
// Validar saldo inicial
double saldo;
while (true) {
System.out.print("Informe seu saldo inicial: ");
saldo = sc.nextDouble();
if (saldo >= 0) {
break;
} else {
System.out.println("O saldo não pode ser negativo.");
}
}
// Exibir dados
System.out.println("""
***********************************
ACESSO CONCEDIDO
Nome do cliente: %s
Tipo de Conta: %s
Saldo atual: %.2f
***********************************
""".formatted(nomeCliente, tipoConta, saldo));
// Menu
int opcao = 0;
while (opcao != 4) {
System.out.println("""
Operações
1 - Consultar saldo
2 - Receber valor
3 - Transferir valor
4 - Sair
""");
System.out.print("Escolha uma opção: ");
opcao = sc.nextInt();
switch (opcao) {
case 1:
System.out.printf("Saldo atual: %.2f%n", saldo);
break;
case 2:
System.out.print("Digite o valor a receber: ");
double valorReceber = sc.nextDouble();
if (valorReceber > 0) {
saldo += valorReceber;
System.out.printf("Valor recebido com sucesso. Novo saldo: %.2f%n", saldo);
} else {
System.out.println("Valor inválido. Digite um valor maior que zero.");
}
break;
case 3:
System.out.print("Digite o valor a transferir: ");
double valorTransferir = sc.nextDouble();
if (valorTransferir <= 0) {
System.out.println("Valor inválido.");
} else if (valorTransferir > saldo) {
System.out.println("Saldo insuficiente.");
} else {
saldo -= valorTransferir;
System.out.printf("Transferência realizada. Novo saldo: %.2f%n", saldo);
}
break;
case 4:
System.out.println("Saindo do sistema...");
break;
default:
System.out.println("Opção inválida.");
}
}
sc.close();
}
}