Advertisement
Cabana_Mario_Ariel_F

TP4E2_Definitivo

Oct 29th, 2020
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.31 KB | None | 0 0
  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. Soto, Sofía Alejandra               | Ing. Informática         | 40.442.283
  15. Vilca, Sergio Esteban                | Ing. Informática         | 39.200.406
  16.  
  17. * @Ingeniera: Perez Ibarra.
  18. * @Fecha: 27/10/2020.
  19. */
  20.  
  21. /*
  22.  Trabajo Práctico N°4 / Listas – Lista Genérica, Lista Ordenada / Ejercicio 2
  23. ---------------------   ---------------------------------------   ------------
  24. * Objetivo General: Implementar a una Pila genérica la estructura de una lista genérica.
  25. * Metodología Empleada: Integrar todos los metodos o valores para testear una pila con estructura de lista.
  26.                         Se utiliza Lista Enlazada Simple escrita de forma manual en Pila.  
  27.                         Se utiliza Lista Enlazada Doble de teoria, para mostrar la pila y simular el método peek.
  28. * El funcionamiento será a traves del entorno de desarrollo integrado Eclipse 2020-06(4.16)-(IDE for Java Developers),
  29.   empleando el leguaje de programación Orientado a Objeto Java.
  30. * Api a utilizar. Paquete:- Java.Util / Clase:- Scanner, - Random, -Iterator.
  31. * Clase principal: PilaImpletaListaEnlazada.
  32. * Clases secundarias: Pila, DoubleLinkedList, Helper.
  33. * Interfaces: ILinkedList.
  34. */
  35.  
  36. public class PilaImplementaListaEnlazada {
  37.     //------------------- Inicio método Run() --------------------//
  38.    
  39.     public void run() {
  40.         int respuesta;
  41.         Pila<Integer> pila3=new Pila<>();
  42.         int longitud=0;
  43.        
  44.         do {
  45.             menu();
  46.             respuesta=Helper.numeroEntero("Ingrese una opción ........ : ");
  47.             if ((respuesta==1)||(respuesta==2)) {      
  48.                 longitud= Helper.numeroEnteroPositivo("Ingrese la cantidad de elementos a insertar a la Pila......: ");
  49.             }
  50.             switch(respuesta){
  51.             case 1 :
  52.                 cargarPila(pila3,longitud);
  53.                 break;
  54.             case 2 :
  55.                 cargaPilaRandom(pila3,longitud);
  56.                 break;
  57.             case 3:
  58.                 System.out.println("El elemento extraido es: "+pila3.pop());
  59.                 break;
  60.             case 4:
  61.                 estavacia(pila3);
  62.                 break;
  63.             case 5:
  64.                 System.out.println("La Cima de la Pila es: "+ pila3.peek());
  65.                 break;
  66.             case 6:
  67.                 System.out.println("La Pila contiene "+pila3.size()+" elementos.");
  68.             break;
  69.             case 7:
  70.                  System.out.println(pila3);
  71.                 break;
  72.             case 8:
  73.                 System.out.println("----------Fin Del Ejercicio 2----------");
  74.                 break;
  75.             default: System.out.println("Seleccione una opción valida............");
  76.                 break;
  77.         } //Fin switch.
  78.            
  79.         }while(respuesta!=8);
  80.  
  81.     }
  82.     //-------------- Menú - PilaImpletaListaEnlazada -------------//
  83.    
  84.     public void menu(){
  85.         System.out.println("-------------- Menú EJERCICIO 2 -------------------");
  86.         System.out.println("1) Cargar elemento por consola......");
  87.         System.out.println("2) Cargar elemento aleatorimente......");
  88.         System.out.println("3) Sacar un elemento de Pila......");
  89.         System.out.println("4) ¿Esta vacía la Pila?......");
  90.         System.out.println("5) Elemento de la cima en Pila......");
  91.         System.out.println("6) Tamaño de la Pila......");
  92.         System.out.println("7) Mostrar Pila......");
  93.         System.out.println("8) Salir del Ejercicio 2 ......");
  94.     } //Fin menu.
  95.     //----------------------- Cargar Pila-------------------------//
  96.  
  97.     public void cargarPila(Pila<Integer> pila, int capacidad) {     //Carga la Pila 2 con enteros de forma manual.
  98.         int entrada;
  99.         System.out.println("-------------- Cargando la Pila ---------------");
  100.         for (int i=0; i<capacidad; i++) {
  101.             entrada=Helper.numeroEntero((i+1)+") Ingrese un número.........: ");
  102.             pila.push(entrada);
  103.          }
  104.     } //Fin cargarPila.
  105.  
  106.    public void cargaPilaRandom(Pila<Integer> pila,int capacidad){  //Carga la Pila 2 con enteros en modo aleatorio.
  107.        System.out.println("----------Pila cargada Aleatoriamente ---------");
  108.       for(int i = 0;i < capacidad; ++i ) {
  109.           pila.push(Helper.random.nextInt(99)-(Helper.random.nextInt(99)));
  110.         }  
  111.    }//Fin cargarColaRamdon.
  112.    //---------------------- ¿Vacio Pila?------------------------//
  113.    
  114.    public void estavacia(Pila<?> pila) {
  115.        if (pila.empty()) {
  116.            System.out.println("La pila NO esta vacía.");
  117.        }else {
  118.            System.out.println("La pila esta vacía.");
  119.        }
  120.    }//Fin estavacia.
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement