Necesito ayuda.
Me preguntan lo siguiente:
Sistema bancario.
1.- Ingresar cliente
2.- Ingresar cuenta corriente
3.- Depositar
4.- Girar
5.- Ver clientes
6.- Ver cuenta corriente.
El sistema debe ingresar clientes y cuentas corriente asociadas a un cliente. Además el sistema debe realizar depósitos y giros. Por otra parte debe tener la opción de poder listar los clientes y cuentas corrientes con sus respectivos datos.
El sistema debe ingresar "N" clientes, como a su vez, el cliente puede tener "N" cuentas corrientes.
Para realizar algún deposito o giro, deben pedir el Rut del cliente y el número de la cuenta corriente.
La opción ver clientes lista a todos los clientes.
La opción ver cuenta corriente, debe pedir el rut del cliente y buscar sus cuentas asociadas.
No logramos que el sistema deposite o gire dinero.
HELP
Pone tu intento, no se hacen tareas.
interno?
a este post lo puedo tomar de barias maneras lo voy a tomar por el lado amable como decía chespirito
mira el problema parece q
lado amable así como para responder?
Claramente escribi "intento" es decir, deja lo que has hecho hasta ahora. No pienses que va a venir alguien y te va a dar todo el codigo y listo, tienes que intentarlo tu mismo y aca te ayudaran.
lo hiciste orientado a objetos ?
donde están tus clases o tu intento
sorry, se me había olvidado escribir mi parte en el primer post. Va en el post que sigue
Banco.java
package CODIGO;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Vector;
public class Banco {
public static void main(String[] args) throws IOException {
Vector misClientes = new Vector();
while (true) {
muestraMenu();
int opcion = convierteANumero(leerOpcion());
switch (opcion) {
case 1:
ingresoClientes(misClientes);
break;
case 2:
ingresoCuenta(misClientes);
break;
case 3:
case 4:
break;
case 5:
listarClientes(misClientes);
break;
case 6:
listarCuentas(misClientes);
break;
case 7:
System.exit(1);
}
}
}
private static void ingresoClientes(Vector misClientes) {
BufferedReader lector = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.print("Ingrese Nombre Completo de Cliente: ");
String nombre = lector.readLine();
System.out.print("Ingrese Rut: ");
String RUT = lector.readLine();
System.out.print("Ingrese Direccion: ");
String direccion = lector.readLine();
Cliente per = new Cliente();
per.setNombre(nombre);
per.setRUT(RUT);
per.setDireccion(direccion);
misClientes.addElement(per);
} catch (IOException ex) {
}
}
private static void muestraMenu() {
System.out.println("----------------------MENU----------------------");
System.out.println("1.- Ingrese Nuevo Cliente");
System.out.println("2.- Ingrese Nueva Cuenta Asociada");
System.out.println("3.- Depositar");
System.out.println("4.- Girar");
System.out.println("5.- Ver Clientes");
System.out.println("6.- Ver Cuenta Corriente");
System.out.println("7.- Salir");
}
private static String leerOpcion() {
BufferedReader lector = new BufferedReader(new InputStreamReader(System.in));
String leido = null;
System.out.print("Ingrese Una opcion: ");
try {
leido = lector.readLine();
} catch (IOException ex) {
}
return leido;
}
private static int convierteANumero(String leerOpcion) {
int dato = 0;
try {
dato = Integer.parseInt(leerOpcion);
} catch (NumberFormatException e) {
System.out.println("error, ingresó una letra");
}
return dato;
}
private static void ingresoCuenta(Vector misClientes) {
BufferedReader lector = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("Ingrese RUT del cliente:");
String rut = lector.readLine();
System.out.println("Ingrese número de cuenta: ");
String cuenta = lector.readLine();
int numcuenta = convierteANumero(cuenta);
System.out.println("Ingrese Saldo inicial:");
String saldo1 = lector.readLine();
int saldo = convierteANumero(saldo1);
Cliente encontrado = null;
for (int i = 0; i < misClientes.size(); i++) {
Cliente people = (Cliente) misClientes.elementAt(i);
if (people.getRUT().compareToIgnoreCase(rut) == 0) {
encontrado = people;
}
}
if (encontrado == null) {
System.out.println("Cliente no existe");
} else {
encontrado.guardaCuenta(numcuenta);
}
} catch (IOException ex) {
}
}
private static void listarCuentas(Vector misClientes){
BufferedReader lector = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("Ingrese Rut del Cliente: ");
String rut = lector.readLine();
Cliente per = new Cliente();
Cliente encontrado = null;
for (int i = 0; i < misClientes.size(); i++) {
Cliente people = (Cliente) misClientes.elementAt(i);
if (people.getRUT().compareToIgnoreCase(rut) == 0) {
encontrado = people;
}
}
if (encontrado == null) {
System.out.println("Cliente no encontrado");
} else {
encontrado.listarClientes();
}
} catch (IOException ex) {
}
}
private static void listarClientes(Vector misClientes) {
for (int i = 0; i < misClientes.size(); i++) {
Cliente aux = (Cliente) misClientes.elementAt(i);
System.out.println("/////////////////////////////////////");
System.out.println("Nombre Completo: " + aux.getNombre());
System.out.println("Rut: " + aux.getRUT());
System.out.println("Direccion: " + aux.getDireccion());
System.out.println("");
}
}
}
Cliente.java
package CODIGO;
import java.util.Vector;
public class Cliente {
private String nombre;
private String RUT;
private String direccion;
private Vector misCuentas;
public Cliente (){
misCuentas = new Vector();
}
public void guardaCuenta(int cuenta){
Cuenta cuen= new Cuenta();
cuen.setCuenta(cuenta);
misCuentas.addElement(cuen);
}
public void listarClientes() {
System.out.println(nombre);
for (int i = 0; i < misCuentas.size(); i++) {
Cuenta numcuenta = (Cuenta) misCuentas.elementAt(i);
System.out.println(numcuenta.getCuenta());
}
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getRUT() {
return RUT;
}
public void setRUT(String RUT) {
this.RUT = RUT;
}
public String getDireccion() {
return direccion;
}
public void setDireccion(String direccion) {
this.direccion = direccion;
}
}
Cuenta.java
package CODIGO;
import java.util.Vector;
public class Cuenta {
private int cuenta;
private int saldo;
private Vector miSaldo;
public Cuenta(){
miSaldo = new Vector();
}
public int getSaldo() {
return saldo;
}
public void setSaldo(int saldo) {
this.saldo = saldo;
}
public int getCuenta() {
return cuenta;
}
public void setCuenta(int cuenta) {
this.cuenta = cuenta;
}
}
Me falta que deposite y gire de un cliente y una cuenta en particular.
Comentarios...
aqui te dejo una clase cuentacorriente y titular(con comentarios)por si las puedes aprovechar
public class CuentaCorriente {
//Atributos
private String numerocuenta;
private Titular cliente;
private double saldo;
// Constructor
public CuentaCorriente(Titular param,String param1,double param2)
{
cliente=param;
numerocuenta=param1;
saldo=param2;
}
public CuentaCorriente(Titular param1,String param2)
{
cliente=param1;
numerocuenta=param2;
saldo=15.3;
}
public String getNumerocuenta() {
return numerocuenta;
}
public Titular getCliente() {
return cliente;
}
public double getSaldo() {
return saldo;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
public void ingresar (double cantidad)
// Metodo para calcular el saldo despues del ingreso
{
saldo = saldo + cantidad;
}
public void reintegro (double cantidad1)
// Metodo para calcular el saldo despues de sacar dinero
{
saldo = saldo - cantidad1;
}
public String toString()
{
return " Numero de cuenta " + numerocuenta + " y de saldo " + saldo;
}
public boolean equals (Object o)
{
if (o==this) // Comprobamos si el pobjeto es de Cuenta corriente
return true;
if (! (o instanceof CuentaCorriente)) //Si no es una instancia de Cuenta Corriente
// Comprobamos si no es una instancia de Cuenta corriente
return false;
CuentaCorriente cc = (CuentaCorriente)o;
if(this.numerocuenta.compareTo(cc.numerocuenta)== 0)
return true;
else return false;
}
}
CLASE TITULAR
public class Titular {
private String nombre,apellidos;
private int edad;
//Constructor
public Titular (String aNombre,String aApellidos,int aEdad)
{
nombre =aNombre;
apellidos=aApellidos;
edad= aEdad;
}
public String getNombre() {
return nombre;
}
public String getApellidos() {
return apellidos;
}
public int getEdad() {
return edad;
}
//Este metodo saca por pantalla los datos de un cliente
public String toString()
{
return nombre +" " + apellidos + " de edad " + edad;
}
}
Y AQUI LA CLASE CuentaAhorro
public class CuentaAhorro extends CuentaCorriente
{
private double interes;
public CuentaAhorro(Titular param1,String param2,double param3,double param4){
super(param1,param2,param3);
interes=param4;
}
public CuentaAhorro(Titular param1,String param2,double param3)
{
super(param1,param2);
interes=param3;
}
public CuentaAhorro(Titular param1,String param2)
{
super(param1,param2);
interes=2.5;
}
public double getInteres(){
return interes;
}
public void calcularInteres()
{
double valorinteres;// Almacena el valor del interes
//double total;// Almaceno el valor del interes + saldo
valorinteres=super.getSaldo()*interes/100;
super.ingresar(valorinteres);
//total=super.getSaldo()+valorinteres;
}
}
y un main que igual te sirve
public class Actividad {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Titular a = new Titular("Pepe","Paco",30);
Titular b = new Titular("Paco","pepe",35);
CuentaCorriente c1 = new CuentaCorriente(a,"2525");
CuentaAhorro c2 = new CuentaAhorro(b,"2526");
c1.ingresar(25.5);
c2.ingresar(20.0);
System.out.println("---El saldo despues de ingrerso-----\n");
System.out.println("El saldo de la cuenta "
+ c1.getNumerocuenta()+ " es de " + c1.getSaldo());
System.out.println("El saldo de la cuenta" + c2.getNumerocuenta()
+" es de "+c2.getSaldo());
System.out.println("\n-------Realizamos un reintegro-------\n");
c2.reintegro(15.0);
System.out.println("Los saldos de la cuenta " + c2.getNumerocuenta()
+" despues del reintegro son de "+ c2.getSaldo());
System.out.println("\n--------Comparamos dos cuentas---------\n");
if(c1.equals(c2))
System.out.println("Las cuentas " + c1.getNumerocuenta()+ " y la cuenta "
+ c2.getNumerocuenta()+ " son iguales");
else
System.out.println("las cuentas "+ c1.getNumerocuenta()+ " y la cuenta "
+c2.getNumerocuenta()+ " son diferentes");
System.out.println(c1);
System.out.println("Los datos del titular de la cuenta"
+c1+ "son"+ a );
}
}