Link Log

Una manera de perder el tiempo…

Colas en Java

with 23 comments

Actualización: http://www.israelsc.mx/programacion/java/colas-en-java/

 

Ya puse unos ejemplos de listas y pilas, pero todavía hace falta el ejemplo de colas (no de esas, pero no estaría mal poner unos buenos ejemplos…).

Bueno, lo que hace este programa, es mostrar un menú para que el usuario seleccione lo que desee hacer, si insertar, retirar o mostrar la cola (de Java…).

import java.util.*;
public class Cola {
    public static void main( String args[] ){
       Scanner leer = new Scanner(System.in);

       colagenerica obj = new colagenerica();

       int op;
       int num;

       do{
          menu();
          op = leer.nextInt();

          switch(op){
              case 1:
                     System.out.println( "Numero a insertar" );
                     num = leer.nextInt();
                     if(obj.inscola(num)){
                        System.out.println( "fre"+obj.fre+"fin"+obj.fin+"aux"+obj.max );
                        System.out.println( "El numero "+num+" se inserto en la cola ["+obj.dret+"]" );
                        System.out.println();
                     }
                     else{
                          System.out.println( "Cola llena" );
                     }
                     break;
              case 2:
                    if(obj.retcola()){
                       System.out.println( "El dato retirado fue: "+obj.dret );
                    }
                    else{
                        System.out.println( "Cola vacia" );
                    }
                    break;
              case 3:
                    if(obj.fre==-1 && obj.fin==-1){
                       System.out.println( "Cola vacia" );
                    }
                    else{
                         System.out.println( "Estado de la cola:" );
                         for(int i=obj.fre; i<=obj.fin; i++){
                            System.out.print(obj.c[i]+" \t");
                         }
                         break;
                    }
          }
       }
       while(op != 4);
    }

    public static void menu(){
       System.out.println( "\t Menu para colas \n" );
       System.out.println( "1.- Insertar" );
       System.out.println( "2.- Retirar" );
       System.out.println( "3.- Estado" );
       System.out.println( "4.- Fin" );
       System.out.println( "\n Selecciona" );
    }
}

El programa usa métodos de la clase colagenerica, que puedes ver haciendo clic en mas

class colagenerica
 {
 	public int max;
 	protected Object dret;
 	public Object c[];
 	public int fre = -1;
 	public int fin = -1;

 	public colagenerica()
 	 {
 	 	max=20;
 	 	c=new Object [max];
 	 }

 	public colagenerica(int n)
 	   { max=n;
 	    c=new Object [max];
 	   } 

 	public boolean colallena(int fin,int max)
 	{
      boolean llena;
      if (fin==max-1)
        llena=true;
        else
          llena=false;
      return llena;
     }

    public boolean colavacia(int fre)
 	{
      boolean vacia;
      if (fre==-1)
        vacia=true;
        else
          vacia=false;
      return vacia;
     }   

  	public boolean inscola(Object dato)
 	 {
 	 	if (fin==max-1)
 	 	   return false;
 	 	fin++;
 	 	c[fin] = dato;
 	 	if (fin==0)
 	 	   fre=0;
 	 	return true;
     }

 	public boolean retcola()
 	  {
 	  	if (fre ==-1)
 	  	   return false;
 	  	dret=c[fre];
 	  	if (fre==fin)
 	  	  {
 	  	  	fre=-1;
 	  	  	fin=-1;
 	  	  }
 	  	 else
 	  	   fre++;
 	  	return true;
 	  }
 }

Written by Link X

June 5, 2008 at 7:19 pm

Posted in Java

Tagged with , ,

23 Responses

Subscribe to comments with RSS.

  1. hola megustaron tus programas es toy estudiando informatica y no se programar
    te agradeseria mucho sime he yudaras con estructura de datos en java. con unos manuales tullos.
    telo agradesera tu amigo miguel.

    miguel

    September 18, 2008 at 8:30 am

  2. Hola, Coincido con Miguel, estan muy buenos tus programas, al igual ke el estudio Lic. Informatika, al igual que el tmb, ando empezando en java, y se me dificulta algo, creeme que me seria de mucha ayuda, el que me hecharas la mano, con algunas dudas, o algo que recomiendes para aprender a programas por lo menos lo basico, de antemano gracias

    vandit

    December 2, 2008 at 9:37 pm

  3. hola gracias , son muy buenos los ejemplos que das..
    yo estoy estudiando algo de java y se que aveces me confundo y ahora estoy viendo lo que son estructuras de datos… No te gustaria como hacer un manual basico para ayudar…
    gracias🙂😀

    Armormi

    January 23, 2009 at 12:48 pm

  4. gracias por los ejemplos … seria bueno que te apiadaras de nosotros que estamos entrando en la programacion de java … y quisieras hacer algun tipo de manual

    am2

    January 23, 2009 at 8:37 pm

  5. HOlaz.. Wenos los ejemplos ah.. pero.. los podrias hacer orientado a objetos o en forma grafica como se le conoce ah ?

    Omar

    May 31, 2009 at 7:54 pm

  6. hola ,bello , gracias por esosporgramas esta bien bacanos, al iagul que muchos yo se manejar muy bien el area de programacin y me gustaria saber como se programaria una cola y una pila como un vector mostrandolo solo tres opciones, eliminar, imprimir, llevar vaciar ose el procedmiento de una cola , te lo agradeceria.gracias

    nawell

    July 8, 2009 at 9:19 am

  7. hola son buens tus programas, y megustaria saber mas sobre esto y puues quisiera saber mas sobre programacion e java y k llevo estructura y me hacen falta unas clases. Y pues quisiera k nos apoyaras con un manual.
    gracias…

    isa

    October 28, 2009 at 8:30 pm

  8. oye cuate antes que nada gracias por los ejemplos son muy buenos y les entiende cualquiera solo una duda como soy nuevo en esto, tengo un problema con &amp y &lt
    dos cosas
    1._ me marca error a que se debe
    2._ aque se refiere

    antes que todo gracias y espero me respondas

    yo

    November 8, 2009 at 2:51 pm

  9. Lo que pasa es que WordPress no publica correctamente algunos simbolos, en este caso & y <, pero ya esta corregido.

    Link X

    November 9, 2009 at 1:44 pm

  10. no pues gracias, hasta me da risa ahora
    pero la neta gracias ahora ya entiendo

    yo

    November 11, 2009 at 8:05 pm

  11. OLA OYE UN FAVORSOTE SI ME PODRIAS AYUDAR CON LO DE BUSQUEDA ES QUE TENGO QUE ENTREGAR UN TRABAJO FINAL Y NO ME SALE. DE ANTEMANO MUCHAS GRACIAS Y TE LO AGRADECERIA SI ME LO MANDAS A MI CORREO OZ_13_10@HOTMAIL.COM

    OZKR

    March 5, 2010 at 12:26 pm

  12. Tas pero demasiado loco man, no me gusta como lo codificaste… pero si funciona… no lose, deberias comentar MAS.

    Groar

    October 4, 2010 at 7:25 pm

  13. ola un mega favor se lo agradecere para toda la vida me urge un programa de java es sobre lo de cola es acer el siguiente menu…… 1.-Encolar-2.- Desencolar-3.- Visualizar-4.- Borrar-5.- Buscar-6.- Salir. ESPERO Y SI ME PUEDAN AYUDAR

    luis alberto

    October 21, 2010 at 12:01 pm

  14. HAHAHA ES PARA EL SABADO 23 DE OCTUBRE PORFA CASI ES MI EXAMEN

    luis alberto

    October 21, 2010 at 12:02 pm

  15. hola como estas

    pues ire directo al grano
    queria saber si me podrias ayudar
    con unos manuales tuyos o con unos consejos
    para programar en java. la materia es estructura de datos acabo de iniciar una carrera en ing. en sistemas. y pues si se programar pero tengo muchos problemas todabia

    mira te dejo mi correo por si me quieres hacer el favor

    pigie_@hotmail.com

    atentamente nino

    nino

    November 16, 2010 at 8:55 am

  16. aaaa esta es mi TAREA y mi PROYECTO pa entregar za

    YOSCER YAULET (@DobleYgriega)

    September 7, 2011 at 8:27 pm

  17. gracias amigo en verdad me sirve….

    ricky

    October 25, 2011 at 7:27 pm

  18. muiii buenn codigoo para lo que son las colas(filas) esta entendible gracias😀

    Lupitaa

    May 25, 2012 at 2:03 pm

  19. Estimado amigo,podrias ayudarme a hacer un porgrama de una cola con un menu de opciones como el que hiciste,pero puedes ayudarme a hacer un metodo para llenar,mostrar,eliminar,buscar,vaciar y estado.
    Asimismo me ayudas a hacer una dinamica,sk ya son para mañana
    Te lo agradecere.

    Claudia

    September 25, 2012 at 3:16 pm

  20. Amigo, tenia una pregunta:
    if(obj.inscola(num)){ –> que significa .inscola ¿?

    Dañiino :D

    October 3, 2012 at 8:38 pm

  21. es que la mera verdad tengo un ejercicio en java y lo quiero pasarlo a jframe pero el ejercicio es de colas dond la cola tiene inserta, ver, eliminar y salir y quiero saber si me pueden ayudar porfa es urgente se los agradeceria

    oliver

    October 5, 2012 at 10:21 pm

  22. me gustaria saber que es dret y fre

    jonathan

    November 8, 2012 at 3:40 pm

  23. colagenerica obj = new colagenerica(); xq da error en esta linea??

    amj

    December 13, 2012 at 12:04 pm


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: