Este blog fue creado con la intencion de aportar a los alumnos una ayuda con los ejercicios de la carrera de ingenieria de sistemas LEVI VELASQUEZ PAZ

Blogroll

sábado, 16 de diciembre de 2017

Ejercicios de colas

package proyectopilacola;
import java.util.Scanner;

public class EjerciciosCola {

    Scanner lec=new Scanner(System.in);

    public void Doncella(){
        Cola<Doncella> cola=new Cola();
        int i, talla;
        String nombre;
   
        System.out.print("Ingrese numero de doncellas: ");
        i=lec.nextInt();
   
        for(int c=0;c<i;c++){
            System.out.print("Doncella "+(c+1)+": ");
            lec.nextLine();
            nombre=lec.nextLine();
            System.out.print("Talla: ");
            talla=lec.nextInt();
            Doncella doncella=new Doncella(nombre,talla);
            cola.encolar(doncella);
        }
   
        System.out.print("Ingrese la talla de Cenicienta: ");
        talla=lec.nextInt();
   
        boolean ver=true;
   
        if(cola.esVacia()){
            System.out.println("No ingreso a ninguna doncella");
        }
        else{
            while(!cola.esVacia()&&ver==true){
                Doncella cenicienta=cola.desencolar();
                if(talla==cenicienta.getTalla()){
                    System.out.println(cenicienta);
                    ver=false;
                }
            }
            if(ver)
                System.out.println("Cenicienta no encontrada");
        }
    }

    public void colaPersonas(){
        Cola<Persona> cola= new Cola();
        int i,edad;
        String nombre;
        System.out.print("Cuantas persona desea ingresar: ");
        i=lec.nextInt();
        for(int c=0;c<i;c++){
            System.out.print(".Nombre: ");
            lec.nextLine();
            nombre=lec.nextLine();
            System.out.print(".Edad: ");
            edad=lec.nextInt();
            Persona persona=new Persona(nombre, edad);
            cola.encolar(persona);
        }
        // 1: Infantes[0-6] || 2: Niños[7-14]    || 3: Adolescentes[15-18]
        // 4: Jovenes[19-35]|| 5: Adultos[36-50] || 6: Adultos Mayores[51]
        if(cola.esVacia())
            System.out.println("La cola esta vacia");
        else{
            Cola<Persona> separar[]=new Cola[6];
            i=0;
            while(i<6){
                separar[i]=new Cola();
                i++;
            }
       
            while(!cola.esVacia()){
                Persona nuevo= cola.desencolar();
                edad=nuevo.getEdad();
                if(edad>=0&&edad<=6){
                    separar[0].encolar(nuevo);
                }
           
                else if(edad>=7&&edad<=14){
                    separar[1].encolar(nuevo);
                }
                else if(edad>=15&&edad<=18){
                    separar[2].encolar(nuevo);
                }
                else if(edad>=19&&edad<=35){
                    separar[3].encolar(nuevo);
                }
                else if(edad>=36&&edad<=50){
                    separar[4].encolar(nuevo);
                }
                else if(edad>=51){
                    separar[5].encolar(nuevo);
                }
        }
   
        for(i=0; i<6;i++){
            if(i==0&&!separar[0].esVacia()){
                System.out.println("      Fila de Infante [0-6]");
                System.out.println("      *********************");
            }
            else if(i==1&&!separar[1].esVacia()){
                System.out.println("      Fila de Niños [7-14]");
                System.out.println("      ********************");
            }
            else if(i==2&&!separar[2].esVacia()){
                System.out.println("      Fila de Adolescentes [15-18]");
                System.out.println("      ****************************");
            }
            else if(i==3&&!separar[3].esVacia()){
                System.out.println("      Fila de Jovenes [19-35]");
                System.out.println("      ***********************");
            }
            else if(i==4&&!separar[4].esVacia()){
                System.out.println("      Fila de Adultos [36-50]");
                System.out.println("      ***********************");
            }
            else if(i==5&&!separar[5].esVacia()){
                System.out.println("        Fila de Adultos Mayores [51]");
                System.out.println("      ****************************");
            }
            separar[i].Mostrar();
            System.out.println();
        }
   
        }
    }


    public void eliminarEntero(){
        Cola<Integer> cola=new Cola();
        int num,i;
   
        System.out.print("¿Cuantos numeros ingresara? : ");
        i=lec.nextInt();
        for(int c=0;c<i;c++){
            System.out.print("Numero ["+(c+1)+"]:");
            num=lec.nextInt();
            cola.encolar(num);
        }
   
        System.out.print("Ingrese el numero a eliminar: ");
        num=lec.nextInt();
   
        if(cola.esVacia())
            System.out.println("La cola esta vacia");
        else{
            int c=0;
            while(c<i){
                int numero=cola.desencolar();
                if(numero!=num)
                    cola.encolar(numero);
                c++;
            }
            cola.Mostrar();
        }
    }

    public void invertirNumero(){
        Cola<Integer> cola=new Cola();
   
        int num;
   
        System.out.print("Ingrese numero: ");
        num=lec.nextInt();
   
        while(num!=0){
            cola.encolar(num%10);
            num=num/10;
        }
        String numero="";
        while(!cola.esVacia()){
            numero=numero+cola.desencolar();
        }
        num=Integer.parseInt(numero);
        System.out.println("El numero invertido es: "+num);
    }

    public void elementosComunes(){
        Cola<Integer> cola1=new Cola();
        Cola<Integer> cola2=new Cola();
        int i, num;
        System.out.print("¿Cuantos numeros para la cola 1: ");
        i=lec.nextInt();
        for(int c=0;c<i;c++){
            System.out.print("Numero ["+(c+1)+"]: ");
            num=lec.nextInt();
            cola1.encolar(num);
        }
        System.out.print("¿Cuantos numeros para la cola 2: ");
        i=lec.nextInt();
        for(int c=0;c<i;c++){
            System.out.print("Numero ["+(c+1)+"]: ");
            num=lec.nextInt();
            cola2.encolar(num);
        }
        Cola<Integer> aux=new Cola();
        while(!cola1.esVacia()){
            num=cola1.desencolar();
            int c=0;
            while(c<i){
                int num1=cola2.desencolar();
                if(num==num1){
                    i--;
                    System.out.println(": "+num);
                    break;
                }
                cola2.encolar(num1);
                c++;
            }
        }
   
    }
    public void UnirColas(){
        Cola<Integer> cola=new Cola();
   
        int i,num,c;
        System.out.print("¿Cuantas colas ingresara?: ");
        i=lec.nextInt();
        Cola<Integer> colas[]=new Cola[i];
        for(c=0;c<i;c++){
            colas[c]=new Cola();
        }
        for(c=0;c<i;c++){
            int o;
            System.out.println("   COLA ["+(c+1)+"]");
            System.out.println("  **********");
            System.out.print("¿Cuantas datos ingresara?: ");
            o=lec.nextInt();
            for(int p=0;p<o;p++){
                System.out.print("Numero ["+(p+1)+"]: ");
                num=lec.nextInt();
                colas[c].encolar(num);
            }
        }
   
        for(c=0;c<i;c++){
            while(!colas[c].esVacia()){
                cola.encolar(colas[c].desencolar());
            }
        }
   
        System.out.println("    COLA TOTAL   ");
        System.out.println("    **********   ");
        cola.Mostrar();
   
   
    }

    public void ColaPrioridad(){
        ColaPrioridad<Integer> cola= new ColaPrioridad();
        int num,i;
        double prioridad;
        int op;
   
        do{
   
            System.out.println("[1]  Encolar");
            System.out.println("[2]  Desencolar");
            System.out.println("[3]  Mostrar");
            System.out.println("[4]  <<REGRESAR");
            do{
                System.out.print("::: Ingrese Opcion: ");
                op=lec.nextInt();
            }while(op<1||op>4);
       
            switch(op){
                case 1:
                    System.out.print("¿Cuantos numeros desea ingresar?: ");
                    i=lec.nextInt();
   
                    for(int c=0;c<i;c++){
                        System.out.print(". Numero["+(c+1)+"]: ");
                        num=lec.nextInt();
                        System.out.print(". Prioridad: ");
                        prioridad=lec.nextDouble();
                        cola.encolarP(num, prioridad);
                    }
                    break;
                case 2:
                    if(!cola.esVacia())
                        System.out.println("Se desencolo: "+cola.desencolar());
                    else
                        System.out.println("La cola esta vacia");
                    break;
                case 3:
                    cola.Mostrar();
                    break;
            }
   
        }while(op!=4);
   
    }



}
Share:

0 comentarios:

Publicar un comentario

Buscar este blog

Con tecnología de Blogger.

Blog Archive

Blog Archive