
JAVA-BANCO HASHMAP
Publicado por anonymous (6 intervenciones) el 03/06/2020 06:13:44
Gente ayudenme en este proyecto final. La diferencia entre las dos cuentas que la cuenta corriente no gana interés y la de ahorros si.Para accesar a un préstamo el saldo que deber existir en la cuenta debe se la mitad de a la cantidad solicitada para prestar en el caso de la CuentaAhorros y en el caso de una Cuenta Corriente este valor debe ser igual a los dos tercios del saldo.
1.-
2.-
3.-
5.-
6.-
1.-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
public class Banco {
private HashMap<Integer,CuentaBancaria> cuentas;
private int nextacct = 0;
public Banco(HashMap<Integer, CuentaBancaria> cuentas, int n){
}
public int nuevaCuenta(int tipo) {
int acctnum = nextacct++;
cuentas.put(acctnum,new CuentaBancaria(nextacct, 0));
return acctnum;
}
public int getBalance(int acctnum) {
return cuentas.get(acctnum).getBalance();
}
public void depositar(int acctnum, int amt) {
if(cuentas.containsKey(acctnum)) {
cuentas.get(acctnum).setBalance((cuentas.get(acctnum).getBalance()+amt));
} else {
System.out.print("La cuenta no esta registrada");
}
}
public boolean autorizarPrestamo(int acctnum, int monto) {
int balance = cuentas.get(acctnum).getBalance();
return balance >= loanamt / 2;
}
public String toString() {
String result = "El banco tiene " + cuentas.size() + "cuentas.";
for (Map.Entry<Integer, CuentaBancaria> e : cuentas.entrySet()) {
result += "\n\tCuenta: " + e.getKey() + ": " + e.getValue().getBalance();
}
return result;
}
public void agregarInteres() {
Set<Integer> accts = cuentas.keySet();
accts.forEach((acc)-> {
cuentas.get(acc).setBalance((int)(cuentas.get(acc).getBalance()*(1+tasa)));
});
}
}
2.-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
public class BancoCliente {
private int current = 0;
private Scanner scanner = new Scanner(System.in);
private boolean done = false;
public BancoCliente(Scanner scanner, Banco banco){
}
public void run() {
while (!done) {
System.out.print("Enter command (0=salir, 1=nuevo"
+ "2=seleccionar, " +
"3=depositar, 4=prestamo, 5=mostrar, 6=interes");
int cnum = scanner.nextInt();
procesarComando(cnum);
}
}
private void procesarComando(int cnum) {
if (cnum == 0) salir();
else if (cnum == 1) nuevaCuenta();
else if (cnum == 2) seleccionar();
else if (cnum == 3) depositar();
else if (cnum == 4) autorizarPrestamo();
else if (cnum == 5) mostrar();
else if (cnum == 6) agregarInteres();
else
System.out.println("Comando ilegal");
}
private void salir() {
done = true;
System.out.println("Goodbye!");
}
private void nuevaCuenta() {
actual = banco.nuevaCuenta();
System.out.println("Tu nuevo numero de cuenta es : " +
actual);
}
private void seleccionar() {
System.out.print("Ingresa la cuenta#: ");
actual = scanner.nextInt();
int balance = banco.getBalance(actual);
System.out.println("El balance de las cuentss " + actual + " es"
+ balance);
}
private void depositar() {
System.out.print("Ingresa la cantidad a depositar: ");
int amt = scanner.nextInt();
banco.depositar(actual, amt);
}
private void autorizarPrestamo() {
System.out.print("Ingresa la cantidad a prestar: ");
int cantidadPrestar = scanner.nextInt();
if (banco.autorizarPrestamo(actual, cantidadPrestar))
System.out.println("Tu prestamo esta aprovado");
else
System.out.println("Tu prestamo esta denegado");
}
private void mostrar() {
System.out.println(banco.toString());
}
private void agregarInteres() {
banco.agregarInteres();
}
}
3.-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
public abstract interface CuentaBancaria {
public int getNumeroDeCuenta();
public void setNumeroDeCuenta();
public int getBalance(int Balance);
public void setBalance();
public void depositar(int amt);
public boolean tieneFondosSuficientes(int loanamt);
public String toString();
}
4.- public class CuentaCorriente implements CuentaBancaria{
private int numeroCuenta;
private int balance;
public CuentaCorriente(int numeroCuenta, int balance ) {
this.numeroCuenta= numeroCuenta;
this.balance= balance;
}
public int getNumeroDeCuenta() {
return numeroDeCuenta;
}
public void setNumeroDeCuenta(int numeroDeCuenta) {
this.numeroDeCuenta = numeroDeCuenta;
}
public int getBalance() {
return balance;
}
public void setBalance(int balance) {
this.balance = balance;
}
public void depositar(int amt){
}
public boolean tieneFondosSuficientes(int monto){
return false;
}
public String toString(){
}
}
5.-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public class CuentaDeAhorros implements CuentaBancaria{
private int tasa;
private int numeroCuenta;
private int balance;
public CuentaDeAhorros(int tasa, int numeroCuenta, int balance ) {
this.tasa=tasa;
this.numeroCuenta= numeroCuenta;
this.balance= balance;
}
public int getNumeroDeCuenta() {
return numeroDeCuenta;
}
public void setNumeroDeCuenta(int numeroDeCuenta) {
this.numeroDeCuenta = numeroDeCuenta;
}
public int getBalance() {
return balance;
}
public void setBalance(int balance) {
this.balance = balance;
}
public void depositar(int amt){
}
public boolean tieneFondosSuficientes(int monto){
return true;
}
public String toString(){
return null;
}
public void agregarInteres(){
}
}
6.-
1
2
3
4
5
public static void main(String[] args) {
BancoCliente cliente=new BancoCliente();
cliente.run();
}
}
Valora esta pregunta


0