Ejercicio básico de programación orientada a objetos en Java
Escribe una clase Cuenta para representar
una cuenta bancaria. Los datos de la cuenta son: nombre del cliente (String),
número de cuenta (String), tipo de interés (double) y saldo (double).
La clase contendrá los siguientes métodos:
Constructor por defecto
Constructor con todos los parámetros
Constructor copia.
Métodos setters/getters para asignar y
obtener los datos de la cuenta.
Métodos ingreso
y reintegro. Un ingreso consiste en
aumentar el saldo en la cantidad que se indique. Esa cantidad no puede ser
negativa. Un reintegro consiste en disminuir el saldo en una cantidad pero
antes se debe comprobar que hay saldo suficiente. La cantidad no puede ser
negativa. Los métodos ingreso y reintegro devuelven true si la operación se ha
podido realizar o false en caso contrario.
Método transferencia
que permita pasar dinero de una cuenta a otra siempre que en la cuenta de
origen haya dinero suficiente para poder hacerla. Ejemplo de uso del método
transferencia:
cuentaOrigen.transferencia(cuentaDestino, importe);
que indica que queremos hacer una
transferencia desde cuentaOrigen a cuentaDestino del importe indicado.
Prueba el funcionamiento de la clase Cuenta con
este main:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String nombre, numero;
double tipo, importe;
//se crea objeto cuenta1 sin parámetros
//se ejecuta el constructor por defecto
Cuenta cuenta1 = new Cuenta();
System.out.print("Nombre : ");
nombre = sc.nextLine();
System.out.print("Número de cuenta : ");
numero = sc.nextLine();
System.out.print("Tipo de interes : ");
tipo = sc.nextDouble();
System.out.print("Saldo: ");
importe = sc.nextDouble();
cuenta1.setNombre(nombre);
cuenta1.setNumeroCuenta(numero);
cuenta1.setTipoInteres(tipo);
cuenta1.setSaldo(importe);
//se crea el objeto cuenta2 con los valores leidos por teclado
//se ejecuta el constructor con parámetros
Cuenta cuenta2 = new Cuenta("Juan Ferrández Rubio", "12345678901234567890", 1.75, 300);
//se crea cuenta3 como copia de cuenta1
//se ejecuta el constructor copia
Cuenta cuenta3 = new Cuenta(cuenta1);
//mostrar los datos de cuenta1
System.out.println("Datos de la cuenta 1");
System.out.println("Nombre del titular: " + cuenta1.getNombre());
System.out.println("Número de cuenta: " + cuenta1.getNumeroCuenta());
System.out.println("Tipo de interés: " + cuenta1.getTipoInteres());
System.out.println("Saldo: " + cuenta1.getSaldo());
System.out.println();
//se realiza un ingreso en cuenta1
cuenta1.ingreso(4000);
//mostrar el saldo de cuenta1 después del ingreso
System.out.println("Saldo: " + cuenta1.getSaldo());
//mostrar los datos de cuenta2
System.out.println("Datos de la cuenta 2");
System.out.println("Nombre del titular: " + cuenta2.getNombre());
System.out.println("Número de cuenta: " + cuenta2.getNumeroCuenta());
System.out.println("Tipo de interés: " + cuenta2.getTipoInteres());
System.out.println("Saldo: " + cuenta2.getSaldo());
System.out.println();
//mostrar los datos de cuenta3
System.out.println("Datos de la cuenta 3");
System.out.println("Nombre del titular: " + cuenta3.getNombre());
System.out.println("Número de cuenta: " + cuenta3.getNumeroCuenta());
System.out.println("Tipo de interés: " + cuenta3.getTipoInteres());
System.out.println("Saldo: " + cuenta3.getSaldo());
System.out.println();
//realizar una transferencia de 10€ desde cuenta3 a cuenta2
if(cuenta3.transferencia(cuenta2, 10)){
System.out.println("Transferencia realizada");
} else {
System.out.println("No se ha podido realizar la transferencia");
}
//mostrar el saldo de cuenta2
System.out.println("Saldo de la cuenta 2");
System.out.println("Saldo: " + cuenta2.getSaldo());
System.out.println();
//mostrar el saldo de cuenta3
System.out.println("Saldo de la cuenta 3");
System.out.println("Saldo: " + cuenta3.getSaldo());
System.out.println();
}
Solución:
//Clase Cuenta
public class Cuenta {
private String nombre;
private String numeroCuenta;
private double tipoInteres;
private double saldo;
//Constructor por defecto
public Cuenta() {
}
//Constructor con parámetros
public Cuenta(String nombre, String numeroCuenta, double tipoInteres, double saldo) {
this.nombre = nombre;
this.numeroCuenta = numeroCuenta;
this.tipoInteres = tipoInteres;
this.saldo = saldo;
}
//Constructor copia
public Cuenta(final Cuenta c) {
nombre = c.nombre;
numeroCuenta = c.numeroCuenta;
tipoInteres = c.tipoInteres;
saldo = c.saldo;
}
//getters y setters
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getNumeroCuenta() {
return numeroCuenta;
}
public void setNumeroCuenta(String numeroCuenta) {
this.numeroCuenta = numeroCuenta;
}
public double getTipoInteres() {
return tipoInteres;
}
public void setTipoInteres(double tipoInteres) {
this.tipoInteres = tipoInteres;
}
public double getSaldo() {
return saldo;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
//método ingreso
public boolean ingreso(double importe) {
if (importe > 0) {
this.saldo += importe;
return true;
}
return false;
}
//método reintegro
public boolean reintegro(double importe) {
if (importe > 0 && this.saldo >= importe) {
this.saldo -= importe;
return true;
}
return false;
}
//método transferencia
public boolean transferencia(Cuenta c, double importe) {
if (this.reintegro(importe)) {
c.ingreso(importe);
return true;
}
return false;
}
}
Hola. En la línea:
ResponderEliminarpublic Cuenta(final Cuenta c)
¿En necesario incluir la palabra reservada "final"?¿Qué función cumple?
Un saludo y gracias.
No es necesario declarar como final el parámetro del constructor copia pero haciendolo así se protege al objeto que vamos a copiar de cualquier modificación que por error se pudiera realizar,
Eliminarsip, tienes razon, aunque tambien hubiera funcionado con el Protected
Eliminartengo una duda siempre es necesario usar set y get , no me queda claro para que funciona , y si no lo colocamos que pasa ??
ResponderEliminarlos getters y setters son necesarios si los atributos son privados, puesto que no podrás acceder a ellos desde ninguna otra clase. Si los atributos son públicos, puedes acceder directamente a ellos, pero no es es el caso.
Eliminarlos getters y setters son necesarios si los atributos son privados, puesto que no podrás acceder a ellos desde ninguna otra clase. Si los atributos son públicos, puedes acceder directamente a ellos, pero no es es el caso.
Eliminarperfecto muchas graciass ;)
ResponderEliminarBuenas tardes cuando intento compilar me salen 3 errores ( non static variable this cannot be referenced from a static contex )
ResponderEliminaren donde dice Cuenta cuenta1 = next Cuenta();
los mismo en Cuenta cuenta 2 ...etc
y en Cuenta cuenta3... etc
quisiera saber como corregir ese error, gracias.
Hola Yazmin Grisell Bandala Martinez, lo que sucede es que no es es que estas creando un objeto de la clase Cuenta y la forma en que tienes Cuenta cuenta1 = next Cuenta(); es incorrecto, la palabra para crear el objeto es new, se corrige de la siguiente forma Cuenta cuenta1 = new Cuenta(); Espero y te sirva.
EliminarHola me puedes ayudar tengo un error en "Cuenta cuenta3 = new Cuenta(cuenta1);" gracias por la ayuda.
ResponderEliminarya lo resolví lo que sucedío es que no había definido en la clase Cuenta.java el constructor copia, pero me queda una duda, el parametro c que recibe el método copia son los parametros de la la cuenta2??. gracias por la ayuda, nuevamente!
EliminarToma efectivamente todos los ATRIBUTOS de la cuenta que le das como parámetro
EliminarHola :)
EliminarTengo una duda, porque en el método ingreso o reintegro, pasas como parámetro "n", public boolean ingreso(double n).
Tendras algunos ejemplos de java fx, soy nuevo en este tema y me interesaría ver algunos ejemplos prácticos
ResponderEliminarLo Hice de esta manera, me gustaria leer sus comentarios
ResponderEliminarpublic static void main(String[] args) {
// TODO Auto-generated method stub
// No declaro cuenta 3, no la vi necesaria para el objetivo del desarrollo de la practica
//declaro cuenta 1
cuenta cuenta1 = new cuenta();
String nombre = JOptionPane.showInputDialog("Nombre del Cliente: ");
String numero = JOptionPane.showInputDialog("Numero de Cuenta: ");
double interes = Double.parseDouble(JOptionPane.showInputDialog("Tipo de Interes: "));
double saldo = Double.parseDouble(JOptionPane.showInputDialog("Saldo: "));
cuenta1.setNombre(nombre);
cuenta1.setNumero(numero);
cuenta1.setInteres(interes);
cuenta1.setSaldo(saldo);
//declaro cuenta 2
cuenta cuenta2 = new cuenta();
String nombre2 = JOptionPane.showInputDialog("Nombre del Cliente: ");
String numero2 = JOptionPane.showInputDialog("Numero de Cuenta: ");
double interes2 = Double.parseDouble(JOptionPane.showInputDialog("Tipo de Interes: "));
double saldo2 = Double.parseDouble(JOptionPane.showInputDialog("Saldo: "));
cuenta2.setNombre(nombre2);
cuenta2.setNumero(numero2);
cuenta2.setInteres(interes2);
cuenta2.setSaldo(saldo2);
//Muestro datos de lo ingresado
System.out.println("datos cuenta");
System.out.println("nombre: "+ cuenta1.getNombre());
System.out.println("cuenta: "+cuenta1.getNumero());
System.out.println("interes: "+cuenta1.getInteres());
System.out.println("Saldo: "+cuenta1.getSaldo());
System.out.println(" ");
System.out.println("datos cuenta");
System.out.println("nombre: "+ cuenta2.getNombre());
System.out.println("cuenta: "+cuenta2.getNumero());
System.out.println("interes: "+cuenta2.getInteres());
System.out.println("Saldo: "+cuenta2.getSaldo());
System.out.println(" ");
//ingreso a la cuenta 1
cuenta1.setSaldo(cuenta1.getSaldo() + Double.parseDouble(JOptionPane.showInputDialog("cuanto desea ingresar a la cuenta 1?")));
System.out.println("Nuevo saldo de cuenta 1 es: "+ cuenta1.getSaldo());
System.out.println(" ");
//transferencia de la cuenta 2 a la cuenta 1
System.out.println("tranferencia saldo de cuenta 2 a cuenta 1");
double aux=Double.parseDouble(JOptionPane.showInputDialog("Cuanto desea transferir?"));
if ((cuenta2.getSaldo()- aux)<=0) {
System.out.println("No se puede hacer la trasferencia, no hay saldo suficiente en la cuenta de "+cuenta2.getNombre());
}else {
cuenta1.setSaldo(cuenta1.getSaldo() + aux);
cuenta2.setSaldo(cuenta2.getSaldo()- aux);
System.out.println("El nuevo saldo de "+cuenta1.getNombre()+" es: "+cuenta1.getSaldo());
System.out.println("El nuevo saldo de "+cuenta2.getNombre()+" es: "+cuenta2.getSaldo());
}
Yo me ahorraría código haciendo por ejemplo esto:
Eliminarcuenta1.setNombre(JOptionPane.showInputDialog("Nombre del cliente:"));
cuenta1.setInteres(Double.parseDouble(JOptionPane.showInputDialog("Tipo de interes: ")));
me podrian pasar el codigo listo para abrir, por favor urge
Eliminargracias
Buenas, estoy teniendo un error con el codigo
ResponderEliminarHola buen día, una consulta porque cuando ya corre el programa y he ingreso por teclado el TIPO DE INTERÉS ( un numero real como 2.1) me sale una excepción :c, pero si funciona si ingreso un entero como TIPO DE INTERÉS.
ResponderEliminarGracias :D
Hola Dany, escribe coma en lugar de punto para introducir el número real ( 2,1 )
EliminarHola, buenas tarde, ¿podrías explicar el porque de ponerse "," en lugar de "." a la hora de ingresar los datos en consola?
EliminarSe hace porque no todos los ordenadores funcionan con "," o "." algunos utilizan las comas para representar decimales y algunos otros ordenadores usan el punto
Eliminaramigo así
ResponderEliminarpublic boolean egreso(double n){
boolean egreso=true;
if(n<0 || saldo<=n){
egreso=false;
}else{
saldo-=n;
}
return egreso;
alguien me podría explicar para que sirve el constructor copia que papel juega en el código
ResponderEliminarEstaría muchísimo más clara la solución si las variables y demás no se llamasen todas "s, n, c....
ResponderEliminarm
ResponderEliminarpodrias explicarme, lo que pasa que no actualiza el datos cuando se ingresan los (4000), cuando al final muestras los datos de la cuenta 3 ¿porqué no actualiza?.
ResponderEliminarHOla
ResponderEliminarel número de cuenta que introduzco no lo coger, me aparece como NULL... ¿alguien sabe qué puede estar pasando?... había pensado en limpiar el buffer pero tampoco... el código es el mismoo y la solución también...
solucionado... dos variables que no coincidía el identificador...
EliminarHola.
ResponderEliminarSi tanto setTipoInteres, como setSaldo son double n ¿Como distingue lo que es interes y es un saldo.
public void setTipoInteres(double n) {
tipoInteres = n;
}
public void setSaldo(double n) {
saldo = n;
}
//método reintegro
public boolean reintegro(double n) {
}
//método transferencia
public boolean transferencia(Cuenta c, double n) {
me esta dando error en esta linea..... public class Cuenta {
ResponderEliminarAver Hestudiao
Eliminarque mierda esto alguien q me ayude :V
Eliminarquien me puede solucionar esto, lo necesito urgente...
ResponderEliminarPor favooooooorr
EliminarCual podría ser la función del tipo de interés para implementar en el ejercicio y ser mas practico
ResponderEliminar?
Buenas noches
ResponderEliminarAlguien me podría ayudar indicandome como implementar este ejemplo en formularios. Gracias.
hola una consulta como podria agregar en tu codigo para ver su estado de cuenta ingresando el DNI
ResponderEliminarEste es el problema que tengo que hacer y me encuentro con errores no se si podrias ayudarme
.- Aplicando el principio de la Responsabilidad Única (SRP) desarrollar el siguiente Proyecto:
Un banco puede crear varias cuentas bancarias y puede realizar búsquedas por número de cuenta bancaria, por DNI para ver el estado de sus cuentas de sus clientes y su morosidad, además de listar las personas que tiene el banco con su respectivo estado bancario y el monto total de sus estados de cuentas. También podrá listar los clientes morosos para conocer el monto total de deuda al banco y así realizar las cobranzas respectivas.
Una Cuenta bancaria se caracteriza por tener asociado un número de cuenta y un saldo disponible. Además, podrá recibir depósitos y retiros de dinero siempre y cuando su estado de cuenta lo permita. Un Cliente se caracteriza por sus datos personales y un array de cuentas bancarias. El cliente puede tener asociada hasta 3 cuentas bancarias, y debe tener un método que permite agregar cuentas bancarias, además debe permitir la transferencia de una cuenta a otra, debe contener un método que devuelva si la persona es morosa, también se podrá eliminar cuentas por persona y además se pueden eliminar clientes. Crear un menú de opciones con todas las operaciones bancarias que se pueden realizar.
Debes hacer tu oe indio soplon, pa eso estudias gil, mañana le paso captura al profe.
Eliminarno se man
ResponderEliminarya lo hice pero no te voa pasar, cuanto das?
es su trabajo de la universidad, no le hagan su tarea a ese indio. que lo haga solo el vago ese.
ResponderEliminarESTUDIA MRD. NO MANDES A HACER TU TAREA .
no_es_mucho_pero_es_trabajo_honesto.jpg.exe
ResponderEliminarpackage cuentas;
public class cuenta {
private String cliente,numcuenta;
private double interes,saldo;
private boolean ingresox , reintegrox;
public cuenta(String cliente , String numcuenta , double interes , double saldo ) {
this.cliente = cliente;
this.numcuenta = numcuenta;
this.interes = interes;
this.saldo = saldo;
}
public void ingreso_reintegros(double ingreso , double reintegro ) {
if(ingreso < 0) {
ingresox = false;
} else {
ingresox = true;
this.saldo+=ingreso;
}
if(reintegro < 0) {
reintegrox = false;
} else if (saldo >= reintegro) {
saldo-=reintegro;
reintegrox = true;
}
}
public double verifica_transfer() {
return this.saldo;
}
public boolean transferx(double cantidad) {
this.saldo+=cantidad;
return true;
}
public void transferencia( cuenta c, double importe) {
if (saldo >= importe) {
c.ingreso_reintegros(importe, 0);
saldo-=importe;
System.out.println("operación exitosa");
} else {
System.out.println("operación invalida, fondos insuficientes");
}
}
}
--------------------------------------------------------------------------------
package cuentas;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class Cajero {
public static void main(String[] args) {
// TODO Auto-generated method stub
double montotransfer;
Scanner entrada = new Scanner(System.in);
cuenta cliente1 = new cuenta(JOptionPane.showInputDialog("ingresar el nombre") , JOptionPane.showInputDialog("ingresar el codigo") , 1/(Integer.parseInt(JOptionPane.showInputDialog("ingresar la tasa interes"))) , Integer.parseInt(JOptionPane.showInputDialog("ingresar el saldo")));
cuenta cliente2 = new cuenta(JOptionPane.showInputDialog("ingresar el nombre") , JOptionPane.showInputDialog("ingresar el codigo") , 1/(Integer.parseInt(JOptionPane.showInputDialog("ingresar la tasa interes"))) , Integer.parseInt(JOptionPane.showInputDialog("ingresar el saldo")));
System.out.print("favor ingresa el monto a transferir " );
montotransfer = entrada.nextDouble();
System.out.println("monto disponible del cliente 1 " + cliente1.verifica_transfer());
System.out.println("monto disponible del cliente 2 " + cliente2.verifica_transfer());
cliente1.transferencia(cliente2, montotransfer);
System.out.println(cliente1.verifica_transfer());
System.out.println(cliente2.verifica_transfer());
}
}
--------------------------------------------------------------------
PD. en la parte de llamar el objeto cliente2 = cuenta c , no pude hacerlo y yo hice fue otra cosa... que al final me daba el resultado correcto, pero no me parecía lo optimo, así que lo cambie.
Hola no me entero de nada ,no abra videos para expliarlo
ResponderEliminarestas haciendo el curso ahora no? estoy igual que vos jajaja
EliminarEl codigo está incompleto, cuando trato de transferirle de la cuenta 3 a la cuenta dos una cantidad mayor a la que tiene la cuenta 3, la cuenta 3 queda con el mismo total de dinero que tiene, pero el error está en que a la cuenta 2 se le agrega el monto asignado en el metodo transferencia con (n), y no tiene porque ya que la cuenta 3 no tiene la suficiente cantidad para transferirle a la cuenta 2 :D
ResponderEliminarAlguien me puede decir las clases que se crean y que va en cada clase?
ResponderEliminaryo tampoco entiendo nada...
ResponderEliminaresto es un ejemplo práctico nada más comenzar... la verdad es que desmoraliza no entender nada de nada. te dan ganas de decir gracias pero esto el primer día y decir que no necesitas preparación previa? en serio?
ResponderEliminarEl banco UN BANCO mantiene las cuentas de varios clientes. Los datos que describen a cada una de las cuentas consisten en el número de cuenta, el nombre del cliente y el balance actual. Escriba una clase para implementar dicha cuenta bancaria. El método constructor debe aceptar como parámetros el número de cuenta y el nombre. Debe proporcionarse métodos para depositar o retirar una cantidad de dinero y obtener el balance actual. Ojo, es importante verificar antes de realizar un retiro bancario, el estado actual del saldo.
ResponderEliminarAlguien que me pueda ayudar de urg
El ejercicio está mal resuelto, los constructores no se están llamando bien. El constructor por parámetros y el copia han de llamar al constructor por defecto.
ResponderEliminarHola buenas, como hago para presentar un ejemplo como este pero en utilizando Hashmap
ResponderEliminarbuenas alguien que tenga un formulario donde pueda permitir realizar las operaciones de Deposito, Retiro y Transferencia
ResponderEliminarBuenas alguien que tenga el proyecto para abrir o una explicación en YouTube lo necesito, porque la profesora no a llegado a explicar correctamente y tampoco el código no ayuda en mucho gracias.
ResponderEliminarDurante la presente actividad extenderemos las funcionalidades de la aplicación bancaria desarrollada. Para ello crearemos: Una clase Banco con las siguientes funcionalidades: o Un constructor en el que podamos especificar el nombre del banco. o Posibilidad de obtener el nombre del banco desde otras clases, pero no de modificarlo. o Un listado de todas las Cuentas. No debe ser accesible desde otras clases. o La posibilidad de dar de alta una nueva Cuenta. Para crear la nueva cuenta se especificará solamente: DNI del cliente Nombre del cliente Como número de cuenta se utilizará el DNI del cliente. Deberemos comprobar que no exista ninguna cuenta anterior con el mismo DNI. o Opción para modificar el Nombre del cliente de una cuenta existente. Para ello se recibirá el DNI y el nuevo nombre del cliente. o Contaremos con la opción de Importar y Exportar el listado de cuentas. Para ello utilizaremos el formato CSV. Al exportar le preguntaremos al usuario en qué dirección quiere guardar el fichero y en la dirección elegida generaremos un fichero CSV con las siguientes columnas: Número de cuenta / DNI Nombre del cliente Fecha de creación de la cuenta Saldo actual Al importar le preguntaremos al usuario la dirección del fichero, que tendrá el mismo formato que al exportar, es decir, un fichero CSV con las siguientes columnas: Número de cuenta / DNI Nombre del cliente Fecha de creación de la cuenta Saldo actual Durante el uso de ficheros deberemos tener presente el correcto manejo de las excepciones.
ResponderEliminar4 La aplicación creará un objeto banco al iniciar (el nombre puede especificarse directamente en el código) o Daremos la opción al usuario para crear una nueva cuenta. Para ello solamente deberá especificar su nombre y DNI. o El usuario podrá modificar su nombre en la cuenta, para ello especificará su DNI y el nombre corregido. o El usuario podrá hacer ingresos en su cuenta, especificando su DNI y el saldo a ingresar. o El usuario podrá hacer extracciones en su cuenta, especificando su DNI y el saldo a extraer. o El usuario podrá preguntar por los detalles de su cuenta, para ello especificará su DNI. Se mostrará por pantalla: Número de cuenta / DNI Nombre del cliente Fecha de creación de la cuenta Saldo actual o Si en cualquiera de las operaciones anteriores se especifica un DNI que no está en el sistema se le debe notificar del error al usuario. o El usuario podrá importar de un fichero CSV un listado de cuentas que se añadirán a las cuentas ya existentes en el Banco. o El usuario podrá exportar en un fichero CSV el listado de cuentas existente en el Banco.
como podria realizar este ejercicio gracias
ResponderEliminarhola, lo has podido realizar?
Eliminarse rifan
ResponderEliminarAlguien me puede explicar para que es necesario el constructor copia // cuenta3? no le veo la utilidad
ResponderEliminarEl constructor copia crea un objeto y le asigna como valores iniciales los del objeto que se le pasa como parámetro. Ten en cuenta que se trata de un ejercicio inicial para trabajar con objetos. En este ejercicio se están utilizando tres constructores para crear objetos, el constructor por defecto, el constructor con parámetros y el constructor copia.
EliminarBuenas, alguien que me de una mano con éste ejercicio, en los puntos b,c,d. por favor.
ResponderEliminarRealizar una clase llamada CuentaBancaria en el paquete Entidades con
los siguientes atributos: numeroCuenta(entero), dniCliente(entero largo),
saldoActual. Agregar constructor vacío, con parámetros, getters y
setters.
Agregar la clase CuentaBancariaServicio en el paquete Servicios que
contenga:
a) Método para crear cuenta pidiéndole los datos al usuario.
b) Método ingresar(double): recibe una cantidad de dinero a ingresar y
se le sumará al saldo actual.
c) Método retirar(double): recibe una cantidad de dinero a retirar y se le
restara al saldo actual. Si la cuenta no tiene la cantidad de dinero a
retirar se retirará el máximo posible hasta dejar la cuenta en 0.
d) Método extraccionRapida: le permitirá sacar solo un 20% de su saldo.
Validar que el usuario no saque más del 20%.
e) Método consultarSaldo: permitirá consultar el saldo disponible en la
cuenta.
f) Método consultarDatos: permitirá mostrar todos los datos de la
cuenta.