import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Conta{
private int numero;
private int agencia;
private String banco;
protected double saldo;
Scanner sc = new Scanner(System.in);
List<Conta> contas = new ArrayList<Conta>();
public Conta(int numero, int agencia, String banco, double saldo) {
this.numero = numero;
this.agencia = agencia;
this.banco = banco;
this.saldo = saldo;
}
public Conta(){}
//Menu para o gerente usar
public void menu(){
System.out.println("\t Escolha uma operação: ");
System.out.println("1 - Sacar");
System.out.println("2 - Depositar");
System.out.println("3 - Transferir");
System.out.println("4 - Sair e imprimir extrato\n");
System.out.println("Opção escolhida: ");
}
public void iniciarPrograma(){
int opcao;
do{
menu();
opcao = sc.nextInt();
escolheOpcao(opcao);
}while(opcao != 4);
}
public void escolheOpcao(int opcao){
double valor;
switch (opcao){
case 1:{
System.out.println("Quanto deseja sacar?");
valor = sc.nextDouble();
sacar(valor);
break;
}
case 2:{
System.out.println("Quanto deseja depositar?");
valor = sc.nextDouble();
depositar(valor);
break;
}
case 3:{
System.out.println("Saldo disponível R$"+getSaldo());
System.out.println("Digite o valor para realizar a transferência: ");
valor = sc.nextDouble();
break;
}
case 4:{
System.out.println("Sistema encerrado!");
break;
}
}
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public int getAgencia() {
return agencia;
}
public void setAgencia(int agencia) {
this.agencia = agencia;
}
public String getBanco() {
return banco;
}
public void setBanco(String banco) {
this.banco = banco;
}
public double getSaldo(){
return saldo;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
public void somaSaldo(ContaCorrente c1, ContaPoupanca c2, ContaSalario c3){
double soma = 0.0;
soma = c1.getSaldo() + c2.getSaldo() + c3.getSaldo();
System.out.println("Saldo total das contas: R$"+soma);
}
public boolean sacar(double quantia){
if(saldo > quantia){
saldo -= quantia;
return true;
}else{
System.out.println("Saldo insuficiente!!");
return false;
}
}
public void depositar(double quantia){
this.saldo += quantia;
System.out.println("Depositado: R$"+quantia);
System.out.println("Saldo atual: R$"+saldo);
}
//Método transferir de uma conta para outra
public void transferir(Conta contaDestino, double valor){
if(saldo > valor){
this.saldo -= valor;
contaDestino.saldo += valor;
System.out.println("Transferência realizada com sucesso!!!");
}else{
System.out.println("Saldo insuficiente para transferência!!");
}
}
}