lunes, 24 de octubre de 2011

ESTRUCTURA DE DATOS (SEGUNDA PARTE)

LAS COLAS ES UN METODO QUE SE USA EN CONTABILIDAD
PUES LA PILA USA A LIFO QUE ES :
ULTIMO EN ENTRAR ES PRIMERO EN SALIR
Y COLA ES LO CONTRARIO, FIFO :
PRIMERO EN ENTRAR ES EL PRIMERO EN SALIR.
COMO PUES AQUI ESTAN LOS CODIGOS PARA CREAR
UNA COLA, NORMALMENTE SE LA USAN EL LISTAS DE COSAS.

COMO SIEMPRE EMPEZAMOS CON EL OBJETO, PUBLICAMOS EN LA CLASE
EN ESTE CASO (ANIMAL,) SERA UN EJM. PARA UDS.

Public Class animal
    Public nombre As String
    Public tipo As String
    Public siguiente As animal
    Public Sub New(ByVal NO As String, ByVal TA As String)
        nombre = NO
        tipo = TA
    End Sub
End Class

BUENO LUEGO CREAN LA CLASE (COLA) NO OLVIDEN DEJAR (  .VB)
AL FINAL DE CADA CLASE.
 APILAMOS DE ESTA MANERA.
 
 Public primero As animal
    Public aux As animal
    Public Sub ingreso(ByVal datos As animal)
        If IsNothing(datos) Then
            primero = datos
        Else
            datos.siguiente = primero
            primero = datos
        End If
    End Sub

AHORA PARA DESAPILAR UNA COLA ES MAS COMPLICADO, PUES SE DESAPILARA
LA PRIMERA EN ENTRAR POR LO QUE DEBEMOS APUNTAR AL VACIO PARA SABER
CUAL ES LA PRIMERA, AQUI VEMOS.

Public Sub DESAPILAR()
        If IsNothing(primero) Then
            MsgBox("COLA VACIA")
        Else
            If IsNothing(primero.siguiente) Then
                primero = Nothing
            Else
                aux = primero
                While Not IsNothing(aux.siguiente.siguiente)
                    aux = aux.siguiente
                End While
                aux.siguiente = Nothing
            End If
            End If
    End Sub

NO OLVIDEN QUE LAS VARIABLES COMO (AUX) QUE ES EL AUXILIAR ES
MUY IMPORTANTE SABER USAR.
COMO VER LOS DATOS PUES COMO SIEMPRE LO VAMOS A VER EN UN LISTBOX
AUNQUE UD SI DESEAN PUEDEN MOSTRAR CON IMAGENES O LO QUE DESEEN.

Public Sub ver(ByVal LB As ListBox)
        Dim PAUX As animal
        If IsNothing(primero) Then
            MsgBox(" LA COLA ESTA VACIA ")
        Else
            LB.Items.Clear()
            PAUX = primero
            While Not IsNothing(PAUX)
                LB.Items.Add("-------------------")
                LB.Items.Add(PAUX.nombre)
                LB.Items.Add(PAUX.tipo)
                LB.Items.Add("-------------------")
                PAUX = PAUX.siguiente
            End While
        End If
    End Sub

BUENO EN LA PARTE DONDE LA MANDA A LLAMAR DE LA FORM1
SIEMPRE DEBEN PUBLICAR ALGO PARECIDO A ESTO,
PUES EN MI CASO ES ESTE.

Public Class Form1
    Public CA As cola = New cola
    Public DAN As animal

PUES DESPUES EN CADA BUTTON SE VERA EL SIGUIENTE CODIGO.

PARA APILAR ES

  Private Sub B_APILAR_Click()
  DAN = New animal(T_NOMBRE.Text, T_TIPO.Text)
            CA.ingreso(DAN)
 END SUB


PARA DESAPILAR SERIA HACI

Private Sub B_DESAPILAR_Click()
 CA.SALIDA()
END SUB

Y PARA VER PUES ES

Private Sub B_VER_Click()
 CA.ver(LB_COLA)
END SUB

DONDE LB_COLA ES MI LISTBOX QUE USO PARA MOSTRAR
AHORA SOLO FALTA EL SALIR BUENO ES ESTE

Private Sub B_SALIR_Click()
 END
END SUB

JAJAJAJAJAJAJAJAJAJAJA.......................
BUENO ESPERO LES HALLA AYUDADO EN ALGO ME DESPIDO
SIN ANTES DECILES QUE PORFA COMENTE PARA VER QUE ES
LO QUE MAS NECESITARAN SI. O LO KE NO ME ENTIENDEN
SI DEJEN SUS DIRECCIONES O ESCRIBAMEN EN EL FACEBOOK
O DEMEN SUS NECESIDADES PAR AYUDARLES.....
......... ESTUDIEN DURO
DIOS LES BENDIGA ATT FVD .

No hay comentarios: