Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Estructura de Datos - Facultad de Ingeniería - Universidad Nacional de Jujuy
- =============================================================================
- */
- /**
- * @Autor: Equipo 5.1 Estructura de Datos.
- /* @Integrantes: | @Carrera: | @DNI:
- | |
- Camacho, Mauro Rodrigo | Ing. Informática | 41.654.090
- Cabana, Mario Ariel Fernando | Ing. Informática | 42.268.639
- Cruz, Facundo Emanuel | Ing. Informática | 41.609.573
- López, Juan Carlos | Ing. Informática | 41.400.550
- Machaca, Aldo Martin | Ing. Informática | 31.455.538
- Soto, Sofía Alejandra | Ing. Informática | 40.442.283
- Vilca, Sergio Esteban | Ing. Informática | 39.200.406
- * @Ingeniera: Perez Ibarra.
- * @Fecha: 28/10/2020.
- */
- /*
- Trabajo Práctico N°4 / Listas – Lista Genérica, Lista Ordenada / Ejercicio 6
- --------------------- -------------------------------------- ------------
- * Objetivo General: Almacenar la información de equipos en una lista y determinar ganador, perdedor.
- * Metodología Empleada: Ingresar por consola o aleatoriamente valores para equipos participantes:
- Nombre del equipo, cantidad de integrantes del equipo (entre 3 y 5)
- y cantidad de presas obtenidas.
- Almacenarlo en una lista y mostrar el equipo que obtuvo mayor cantidad de
- presas y el que obtuvo la menor cantidad.
- Ademas indicar que equipo conformado por la menor cantidad de integrante
- obtuvo más presas.
- Se utiliza Lista Enlazada Doble, DobleOrdenada.
- * El funcionamiento será a traves del entorno de desarrollo integrado Eclipse 2020-06(4.16)-(IDE for Java Developers),
- empleando el leguaje de programación Orientado a Objeto Java.
- * Api a utilizar. Paquete:- Java.Util / Clase:- Iterator, - Scanner , - Random.
- * Clase principal: CompetenciaPescaPejerey.
- * Clases secundarias: Equipos, DoubleLinkedList, DoubleLinkedListOrdenada, Helper.
- * Iteradores: ILinkedList, LinkedListOrdenada.*/
- import java.util.Iterator;
- public class CompetenciaPescaPejerey {
- //------------------- Inicio método Run() --------------------//
- public void run() {
- Equipos minIntegrantes=null;
- DoubleLinkedListOrdenada<Equipos>listaEquipos= new DoubleLinkedListOrdenada<Equipos>();
- int respuesta, cantidad=0;
- System.out.println("Trabajo Práctico Nº 4 - Ejercicio 6");
- do {
- menu();
- respuesta=Helper.numeroEntero("Ingrese una opción ........: ");
- if ((respuesta==1)||(respuesta==2)) {
- cantidad= Helper.numeroEnteroPositivo("Cantidad de de Equipos Participantes: ");
- }
- switch(respuesta){
- case 1: EnlistarEquipos(listaEquipos,cantidad,1);
- break;
- case 2: EnlistarEquipos(listaEquipos,cantidad,2);
- break;
- case 3: listaEquipos(listaEquipos);
- break;
- case 4: mostrarResultados(listaEquipos,minIntegrantes);
- System.out.println("-----Fin del Ejercicio 6-----------");
- break;
- default: System.out.println("Ingrese una opción válida.....");
- break;
- }
- }while(respuesta!=4);
- }
- //-------------- Menú - CompetenciaPescaPejerey --------------//
- public void menu(){
- System.out.println("-------------- Campeonato de Pesca -------------------");
- System.out.println("1) Cargar equipos......");
- System.out.println("2) Generar equipos......");
- System.out.println("3) Lista de equipos registrados........");
- System.out.println("4) Fin del Campeonado, Mostrar los resultados .....");
- } //Fin menu
- //----------------------- Cargar Lista------------------------//
- private void EnlistarEquipos(LinkedListOrdenada<Equipos> e, int ultimo,int eleccion) {//Proceso de Cargar una Lista.
- System.out.println("----------- Carga de equipos ------------------");
- for(int i=0;i<ultimo;i++) {
- if(eleccion==1) {
- System.out.println("Carga del Equipo Nº "+(i+1)+" :");
- e.addenOrden(crearEquipo());
- }else {
- e.addenOrden(equiporandom());
- }
- }
- System.out.println("------- Fin de la Carga de equipos ---------");
- } //Fin EnlistarEquipos.
- private Equipos crearEquipo() { //Carga Equipo de forma manual.
- Integer miembros;
- Integer pescados;
- System.out.print("Ingrese Nombre del Equipo: ");
- String equipo=Helper.sc.nextLine();
- System.out.print("Cantidad de Miembros del Equipo (Min. 3,Max.5):");
- while(true){
- miembros= Helper.entero("");
- if ( Helper.dentroIntervalo(miembros,3,5)==false) break;
- }
- System.out.print("Ingrese Cantidad de Peces Atrapados :");
- while(true) {
- pescados= Helper.entero("");
- if(Helper.naturalesCero(pescados)==false)break;
- }
- return new Equipos (equipo,miembros,pescados);
- } //Fin crearEquipo.
- private Equipos equiporandom(){ //Carga Equipo con datos aleatorios.
- String[] nombre= {"Team Null","Sin anzuelo","Bigote de Bagre","Golden fishers","Camarones","Only Catamaran","Participamos de onda","Solo pesco en Rio","Exception Explosion","Trycatch's","No sabemos programar","Seguidores del profe Tentor","Esclavos de Zapana","Esto es C++?","Me Equivoque de Carrera","No Quiero Recursar"} ;
- String equipo=nombre[Helper.generadorAleatorio(nombre.length)];
- Integer miembros=Helper.generadorAleatorio(3)+3;//
- Integer pescados=Helper.generadorAleatorio(500); //
- return new Equipos(equipo,miembros,pescados);
- } //Fin Equiporandom.
- //----------------- Mostrar Lista Ordenada -------------------//
- public void listaEquipos(DoubleLinkedListOrdenada<Equipos> listaEquipos){
- System.out.println("Lista de los equipos registrados.......");
- if (listaEquipos.size()!=0) {
- System.out.println(listaEquipos.toString()+"\n-------------- Fin del listado ------------");
- }else System.out.println("------- Aun no se registraron equipos -----");
- } // Fin listaEquipos.
- //--------------- Mostrar Resultado de Pesca -----------------//
- private void mostrarResultados(DoubleLinkedListOrdenada<Equipos> e,Equipos desventaja){
- int contpescados = 0,minimoIntregrantes=6;
- System.out.println("Los ganadores son:");
- mostrarGanadores(e);
- System.out.println("==================================");
- for (Equipos checkeo : e) {
- if(checkeo.getIntegre()<minimoIntregrantes) {
- minimoIntregrantes=checkeo.getIntegre();
- contpescados=0;
- if(checkeo.getPresas()>=contpescados) {
- contpescados=checkeo.getPresas();
- desventaja= checkeo;}
- }
- }
- System.out.println("Equipo con menor integrantes y mayor presas\n"+desventaja+"\n==================================");
- System.out.println("Los perdedores son: ");
- mostrarPerdedores(e);
- System.out.println("==================================");
- }// Fin MostrarResultados.
- private void mostrarGanadores(DoubleLinkedListOrdenada<Equipos> lista){
- for (Equipos equipo: lista) {
- if (equipo.compareTo(lista.iterator().next())!=0) {
- break;
- }
- System.out.println(equipo);
- }
- } //Fin mostrarGanadores
- private void mostrarPerdedores(DoubleLinkedListOrdenada<Equipos> lista){
- Iterator<Equipos> IT = lista.iteratorBack();
- Equipos equipo1= IT.next();
- System.out.println(equipo1);
- while (IT.hasNext()) {
- Equipos equipo2=IT.next();
- if (equipo1.compareTo(equipo2)==0) {
- System.out.println(equipo2);
- }else break;
- }
- } //Fin mostrarPerdedores
- }
Add Comment
Please, Sign In to add comment