SHOW:
|
|
- or go back to the newest paste.
1 | /* Estructura de Datos - Facultad de Ingeniería - Universidad Nacional de Jujuy | |
2 | ============================================================================= | |
3 | */ | |
4 | ||
5 | /** | |
6 | * @Autor: Equipo 5.1 Estructura de Datos. | |
7 | /* @Integrantes: | @Carrera: | @DNI: | |
8 | | | | |
9 | Camacho, Mauro Rodrigo | Ing. Informática | 41.654.090 | |
10 | Cabana, Mario Ariel Fernando | Ing. Informática | 42.268.639 | |
11 | Cruz, Facundo Emanuel | Ing. Informática | 41.609.573 | |
12 | López, Juan Carlos | Ing. Informática | 41.400.550 | |
13 | Machaca, Aldo Martin | Ing. Informática | 31.455.538 | |
14 | ||
15 | * @Ingeniera: Perez Ibarra. | |
16 | * @Fecha: 12/10/2020. | |
17 | */ | |
18 | ||
19 | /* | |
20 | Trabajo Práctico N°3 / Listas - Cola (Queue) / Ejercicio 1 | |
21 | --------------------- --------------------- ------------ | |
22 | * Objetivo General: Crear una función, método o subprograma que reciba como parametro una cola y un número, devuelva una cola. | |
23 | * Metodología Empleada: Ingresar por consola o aleatoriamente valores para una cola. | |
24 | Ingresar un número, del cual se eliminaran sus multiplos en la cola. | |
25 | Suprimir todas las apariciones de multiplos de dicho número solicitado. | |
26 | Se debe utilizar colas circulares. | |
27 | * El funcionamiento será a traves del entorno de desarrollo integrado Eclipse 2020-06(4.16)-(IDE for Java Developers), | |
28 | empleando el leguaje de programación Orientado a Objeto Java. | |
29 | * Api a utilizar. Paquete:- Java.Util / Clase:- Scanner y - Random. | |
30 | * Clase principal: SuprimirMultiplosdeCola. | |
31 | * Clases secundarias: Cola, Helper. | |
32 | */ | |
33 | ||
34 | public class SuprimirMultiplosdeCola { | |
35 | ||
36 | //------------------- Inicio método Run() -------------------// | |
37 | ||
38 | public void run(){ | |
39 | Cola<Integer> colaInicial; | |
40 | Cola<Integer> colaRestringida; | |
41 | int respuesta; | |
42 | int numero=0; | |
43 | int longitud=0; | |
44 | do { | |
45 | menu(); | |
46 | respuesta=Helper.numeroEntero("Ingrese una opción ........ : "); | |
47 | if ((respuesta==1)||(respuesta==2)) { | |
48 | longitud= Helper.numeroEnteroPositivo("Ingrese la longitud de la Cola......: "); | |
49 | numero=Helper.numeroEntero("Ingrese un número a comparar......: "); | |
50 | colaInicial= new Cola(longitud); | |
51 | colaRestringida= new Cola(longitud); | |
52 | }else{ | |
53 | colaInicial= new Cola(); | |
54 | colaRestringida= new Cola(); | |
55 | } | |
56 | switch(respuesta){ | |
57 | case 1 :cargarCola(colaInicial, longitud); | |
58 | Helper.MostrarColas(colaInicial,"La Cola ingresada es......: "); | |
59 | colaRestringida=suprimirMultiplos(colaInicial, numero); | |
60 | Helper.MostrarColas(colaRestringida,"La Cola resultante es......: "); | |
61 | break; | |
62 | case 2 :CargaColaRandom (colaInicial,longitud); | |
63 | Helper.MostrarColas(colaInicial,"La Cola ingresada es......: "); | |
64 | colaRestringida=suprimirMultiplos(colaInicial, numero); | |
65 | Helper.MostrarColas(colaRestringida,"La Cola resultante es......: "); | |
66 | break; | |
67 | - | case 3: System.out.println("----------Fin Del Ejercicio1----------"); |
67 | + | case 3: System.out.println("----------Fin Del Ejercicio Nº 1----------");//Fin del programa. |
68 | break; | |
69 | default: System.out.println("Seleccione una opción valida............"); | |
70 | break; | |
71 | } //Fin switch. | |
72 | } while (respuesta!=3); | |
73 | } //Fin run. | |
74 | ||
75 | //-------------- Menú - SuprimirMultiplosdeCola -------------// | |
76 | ||
77 | public void menu(){ | |
78 | System.out.println("-------------- Menú EJERCICIO 1 -------------------"); | |
79 | System.out.println("1) Cagar de manera manual......"); | |
80 | System.out.println("2) Cargar de manera random......"); | |
81 | System.out.println("3) Salir del Ejercicio 1 ......"); | |
82 | } //Fin menu. | |
83 | ||
84 | //----------------------Cola - Cargar------------------------// | |
85 | ||
86 | public void cargarCola(Cola<Integer> cola, int capacidad) { //Carga la Cola con enteros de forma manual. | |
87 | int entrada; | |
88 | System.out.println("-------------- Cargando la Cola -------------"); | |
89 | for (int i=0; i<capacidad; i++) { | |
90 | entrada=Helper.numeroEntero((i+1)+") Ingrese un número.........: "); | |
91 | cola.offer(entrada); | |
92 | } | |
93 | } //Fin cargarCola. | |
94 | ||
95 | - | public void CargaColaRandom(Cola<Integer> cola,int capacidad){ //Carga la Cola con enteros de forma aleatoria. |
95 | + | public void CargaColaRandom(Cola<Integer> cola,int capacidad){ //Carga la Cola con enteros de forma aleatoria. |
96 | System.out.println("--------------Cola cargada Aleatoriamente -------------"); | |
97 | // do { | |
98 | // cola.pool(); | |
99 | // }while(cola.size()!=0); | |
100 | for(int i = 0;i < capacidad; ++i ) { | |
101 | cola.offer(Helper.random.nextInt(99)-(Helper.random.nextInt(99))); | |
102 | } | |
103 | }//Fin cargarColaRamdon. | |
104 | ||
105 | //---Cola - Suprimir elementos especificos (Ejercicio 1)---// | |
106 | ||
107 | public Cola<Integer> suprimirMultiplos(Cola<Integer> cola, int parametro){ | |
108 | Cola<Integer> colaSinMultiplos=new Cola(cola.size()) ; | |
109 | do { | |
110 | try { | |
111 | if ((cola.peek()%parametro)!=0) { | |
112 | colaSinMultiplos.add(cola.pool()); | |
113 | }else{ | |
114 | cola.pool(); | |
115 | } //Fin if-else. | |
116 | } catch (Exception e) { | |
117 | if (cola.peek()!=0) { | |
118 | colaSinMultiplos.add(cola.pool()); | |
119 | }else { | |
120 | cola.pool(); | |
121 | }// Fin if-else. | |
122 | } | |
123 | } while (cola.size()>0); | |
124 | return colaSinMultiplos; | |
125 | } //fin suprimirMultiplos. | |
126 | ||
127 | } //Fin class SuprimirMultiplosdeCola. | |
128 |