package com.example;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Digite seu nome:");
String nome = sc.nextLine(); // mesmo se eu digitar um número, o programa vai aceitar
int escolhaConta;
String tipoConta = "";
double saldo;
int escolhaOperacoes;
double valor;
String apenasNumeros = "Erro! Digite apenas números";
String opcaoInvalida = "Opção inválida! Teste novamente";
do {
try {
System.out.print("""
Selecione o tipo de conta:
Corrente (1)
Poupança (2)
Salário (3)
""");
escolhaConta = sc.nextInt();
switch (escolhaConta) {
case 1 -> {
tipoConta = "Corrente";
}
case 2 -> {
tipoConta = "Poupança";
}
case 3 -> {
tipoConta = "Salário";
}
default -> System.out.println(opcaoInvalida);
}
} catch(InputMismatchException e) {
System.out.println(apenasNumeros);
sc.nextLine(); // limpa o buffer
escolhaConta = 0; //faz o loop ser inicado novamente
}
}while(escolhaConta <1 || escolhaConta >3);
do{
try{
System.out.print("Informe um saldo inicial: ");
saldo = sc.nextDouble();
break; // sai do loop se conseguir um input válido
}catch (InputMismatchException e) {
System.out.println(apenasNumeros);
sc.nextLine();
}
}while(true);
System.out.println(String.format("""
***************************************
Dados iniciais do cliente:
Nome: %s
Tipo da conta: %s
Saldo inicial: %.2f
***************************************
""", nome, tipoConta, saldo));
do{
try {
System.out.println(String.format("""
Operações
1- Consultar saldos
2- Receber valor
3- Transferir valor
4- Sair
"""));
escolhaOperacoes = sc.nextInt();
switch (escolhaOperacoes) {
case 1 -> {
System.out.println(String.format("R$%.2f", saldo));
}
case 2 -> {
System.out.println("Informe o valor a receber: ");
valor = sc.nextDouble();
saldo += valor;
}
case 3 -> {
System.out.println("Informe o valor a enviar: ");
valor = sc.nextDouble();
saldo -= valor;
}
case 4 -> {
System.out.println("Saindo ...");
}
default -> System.out.println(opcaoInvalida);
}
} catch (InputMismatchException e ){
System.out.println(apenasNumeros);
sc.nextLine();
escolhaOperacoes = 0;
}
}while(escolhaOperacoes !=4);
sc.close();
}
}