Está en la página 1de 8

UNIVERSIDAD DE LAS FUERZAS ARMADAS-ESPE SEDE SANTO

DOMINGO
DEPARTAMENTO DE CIENCIAS DE LA COMPUTACIÓN - DCCO-SS

CARRERA DE INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN

PERIODO : Mayo 2021 – Agosto 2021

ASIGNATURA : Estructura de Datos

TEMA : Ejercicio Cola Bancos

NOMBRES : Luis Miguel Olalla Chuque

NIVEL-PARALELO : Cuarto

DOCENTE : Ing. Fredy Gavilanes MSc

FECHA DE ENTREGA : 07/07/2021

SANTO DOMINGO - ECUADOR

2020
1. Código

Clase NodoBanco

package bancoscola;

public class NodoBanco {

int cedula, pasaporte, cuenta, tarjeta;


String nombres, apellidos;
double saldo;
NodoBanco siguiente;
public NodoBanco(int cedula, int pasaporte, String nombres, String
apellidos,
int cuenta, int tarjeta, double saldo) {
this.cedula = cedula;
this.pasaporte = pasaporte;
this.nombres = nombres;
this.apellidos = apellidos;
this.cuenta = cuenta;
this.tarjeta = tarjeta;
this.saldo= saldo;
this.siguiente = null;
}

Clase Cola

package bancoscola;

public class Cola{


NodoBanco inicio, fin, cola;
int tamanio;
public Cola () {
this.inicio = this.fin = null;
tamanio = 0;
}

public boolean estaVacia() {


return inicio == null;
}

public void insertar (int cedula, int pasaporte, String nombres, String
apellidos,
int cuenta, int tarjeta, double saldo) {
NodoBanco banco = new NodoBanco(cedula, pasaporte, nombres,
apellidos, cuenta, tarjeta, saldo);
if (estaVacia()) {
inicio = banco;
}else {
fin.siguiente = banco;
}
fin = banco;
tamanio ++;
}
public String quitar() {
String aux = ("\nCI: " +inicio.cedula+
"\nPasaporte: "+inicio.pasaporte+
"\nNombres: "+inicio.nombres+
"\nApellidos: "+inicio.apellidos+
"\nNúmero de Cuenta: "+inicio.cuenta+
"\nNúmero de Tarjeta: "+inicio.tarjeta+
"\nSaldo Actual: "+inicio.saldo);
inicio = inicio.siguiente;
tamanio --;
return aux;
}

//Método para saber cual es el frente de la cola


public String inicioCola() {
String aux = ("\nCI: " +inicio.cedula+
"\nPasaporte: "+inicio.pasaporte+
"\nNombres: "+inicio.nombres+
"\nApellidos: "+inicio.apellidos+
"\nNúmero de Cuenta: "+inicio.cuenta+
"\nNúmero de Tarjeta: "+inicio.tarjeta+
"\nSaldo Actual: "+inicio.saldo);
return aux;
}

//Método para saber el tamaño de la Cola


public int tamanioCola() {
return tamanio;
}

//Método para vaciar la cola


public void vaciarCola() {
while (estaVacia()) {
quitar();
}
}
}

Clase Principal

package bancoscola;

import javax.swing.JOptionPane;

public class ED_TDA_ClientesBanco{

public static void main(String[] args) {


// TODO Auto-generated method stub

int opcion = 0, cedula, pasaporte, cuenta, tarjeta;


String nombres, apellidos;
double saldo;
Cola colaBanco = new Cola();

do {
try {
opcion =
Integer.parseInt(JOptionPane.showInputDialog(null, ""
+ "1. AGREGAR UN CLIENTE DEL BANCO EN LA
COLA\n "
+ "2. SACAR UN CLIENTE DEL BANCO EN LA
COLA\n "
+ "3. ¿LA COLA DE CLIENTES ESTÁ VACÍA?\n "
+ "4. ¿CUAL ES EL CLIENTE EN LA CIMA\n "
+ "5. ¿CUÁL ES EL TAMAÑO DE LA COLA?\n "
+ "6. VACIAR LA COLA DE LOS CLIENTES\n "
+ "7. SALIR DEL PROGRAMA \n "
+ "¿Qué desea realizar?", "Menú Opciones",
JOptionPane.INFORMATION_MESSAGE));
switch (opcion) {
case 1:
cedula = Integer.parseInt
(JOptionPane.showInputDialog(null, "Escriba la cédula del cliente",
"Insertando cliente",
JOptionPane.INFORMATION_MESSAGE));
pasaporte = Integer.parseInt
(JOptionPane.showInputDialog(null, "Escriba el pasaporte del cliente",
"Insertando cliente",
JOptionPane.INFORMATION_MESSAGE));
nombres = JOptionPane.showInputDialog(null,
"Escriba los nombres del cliente",
"Insertando cliente",
JOptionPane.INFORMATION_MESSAGE);
apellidos = JOptionPane.showInputDialog(null,
"Escriba los apellidos del cliente",
"Insertandocliente",
JOptionPane.INFORMATION_MESSAGE);
cuenta = Integer.parseInt
(JOptionPane.showInputDialog(null, "Escriba el número de cuenta del cliente",
"Insertando cliente",
JOptionPane.INFORMATION_MESSAGE));
tarjeta = Integer.parseInt
(JOptionPane.showInputDialog(null, "Escriba el número de tarjeta de crédito del
cliente",
"Insertandocliente",
JOptionPane.INFORMATION_MESSAGE));
saldo = Double.parseDouble
(JOptionPane.showInputDialog(null, "Escriba el saldo actual del cliente",
"Insertando cliente",
JOptionPane.INFORMATION_MESSAGE));
colaBanco.insertar(cedula, pasaporte, nombres,
apellidos, cuenta, tarjeta, saldo);
break;
case 2:
if (!colaBanco.estaVacia()) {
JOptionPane.showMessageDialog(null, "El
cliente del banco es" +colaBanco.quitar(),
"Botando cliente de la Cola
del banco", JOptionPane.INFORMATION_MESSAGE);
}else {
JOptionPane.showMessageDialog(null, "La
Cola de clientes del banco está vacía",
"Cola de clientes vacía",
JOptionPane.INFORMATION_MESSAGE);
}
break;
case 3:
if(colaBanco.estaVacia()) {
JOptionPane.showMessageDialog(null, "La
Cola de clientes está vacía",
"Cola de clientes vacía",
JOptionPane.INFORMATION_MESSAGE);
}else {
JOptionPane.showMessageDialog(null, "La
Cola de clientes no está vacía",
"Existen clientes en la
cola", JOptionPane.INFORMATION_MESSAGE);
}
break;
case 4:
if (!colaBanco.estaVacia()) {
JOptionPane.showMessageDialog(null, "El
cliente que está en el frente es " +colaBanco.inicioCola(),
"Existen clientes en la
cola", JOptionPane.INFORMATION_MESSAGE);
}else {
JOptionPane.showMessageDialog(null, "No
hay clientes, la cola está vacía",
"La cola de clientes está
vacía", JOptionPane.INFORMATION_MESSAGE);
}
break;
case 5:
JOptionPane.showMessageDialog(null, "El tamaño de
la Cola de clientes es " +colaBanco.tamanioCola(),
"Elementos de la Cola",
JOptionPane.INFORMATION_MESSAGE);
break;
case 6:
if (!colaBanco.estaVacia()) {
colaBanco.vaciarCola();
JOptionPane.showMessageDialog (null, "La
cola de clientes se vacio", ""
+ "vaciando cola ",
JOptionPane.INFORMATION_MESSAGE);
} else {
JOptionPane.showMessageDialog (null, "La
cola de clientes está vacía, Cola vacia", ""
+ "La cola de clientes está
vacía", JOptionPane.INFORMATION_MESSAGE);
}
break;
case 7:
JOptionPane.showMessageDialog(null, "Finalizando
Programa");
break;
default: JOptionPane.showMessageDialog(null, "Opción
Incorrecta");
}
}catch(NumberFormatException n) {
JOptionPane.showMessageDialog(null, "Error"
+n.getMessage());
}
}while(opcion != 7);
}

Ejecución

Agregar cliente a la cola


Sacar clientes

Cola vacía

Cliente en la cima

Tamaño de la cola
Cola vacía

Método para vaciar la cola

public void vaciarCola() {


while(!estaVacia()) {
quitar();
}
}

También podría gustarte