import java.util.Scanner;
// Definição da classe Conta
class Conta {
private String nome;
private String tipoDeConta;
private double saldo;
// Construtor da classe Conta
public Conta(String nome, String tipoDeConta, double saldo) {
this.nome = nome;
this.tipoDeConta = tipoDeConta;
this.saldo = saldo;
}
// Método para consultar o saldo
public void consultarSaldo() {
System.out.printf("Seu saldo é de: R$ %.2f\n", saldo);
}
// Método para depositar valor na conta
public void depositar(double valorDeposito) {
saldo += valorDeposito;
System.out.printf("Seu depósito foi de R$ %.2f\n", valorDeposito);
consultarSaldo(); // Exibe o saldo atualizado
}
// Método para sacar valor da conta
public void sacar(double valorSaque) {
if (valorSaque <= saldo) {
saldo -= valorSaque;
System.out.printf("Seu saque foi de R$ %.2f\n", valorSaque);
consultarSaldo(); // Exibe o saldo atualizado
} else {
System.out.println("Valor de saque informado é insuficiente para o saldo da conta.");
}
}
// Métodos getters para nome e tipo de conta (opcional)
public String getNome() {
return nome;
}
public String getTipoDeConta() {
return tipoDeConta;
}
}
// Classe principal ContaBancaria com o método main
public class ContaBancaria {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Criar uma instância da classe Conta com os dados iniciais
Conta minhaConta = new Conta("Douglas Antônio Correa Martins", "Conta corrente", 2400.00);
System.out.println("***Conta Bancária***");
System.out.println("Tipo de conta: " + minhaConta.getTipoDeConta());
System.out.println("Nome: " + minhaConta.getNome());
minhaConta.consultarSaldo(); // Exibe o saldo inicial
int escolha;
do {
System.out.println("""
**MENU DE OPERAÇÕES**
Selecione a opção desejada:
1. Consultar saldo;
2. Depositar valor;
3. Sacar valor;
4. Sair.
""");
escolha = scanner.nextInt();
switch (escolha) {
case 1:
minhaConta.consultarSaldo();
break;
case 2:
System.out.println("Insira o valor a ser depositado:");
double valorDeposito = scanner.nextDouble();
minhaConta.depositar(valorDeposito);
break;
case 3:
System.out.println("Insira o valor a ser sacado:");
double valorSaque = scanner.nextDouble();
minhaConta.sacar(valorSaque);
break;
case 4:
System.out.println("Operação finalizada com êxito.");
break;
default:
System.out.println("Opção inválida! Escolha uma opção válida.");
}
} while (escolha != 4);
scanner.close();
}
}