BUENO, EN ESTRUCTURA DE DATOS EMPEZAMOS VER COMO GUARDAR, ORDENAR, APILAR, DESAPILAR, MOSTRAR, USAR LOS DATOS.
PARA GUARDAR LOS DATOS.
SE PUEDEN GUARDAR LOS DATOS EN VECTORES Y MATRICES.
PARA GUARDAR ESTOS UTILIZAMOS UNA VARIABLE Y LAS CORDENADAS POR EJM:
VECTOR(I)
DONDE (VECTOR) ES LA VARIABLE PUBLICADA COMO INTEGER Y LA (I) ES LA CORDENADA DEL VECTOR
MATRIZ (X, Y)
DONDE LA (MATRIZ) ES LA VARIABLE PUBLICADA COMO INTEGER Y LAS (X, Y) SON LAS CORDENADAS QU SE USAN PARA UN PUNTO EXACTO DE LA MATRIZ.
PARA ORDENAR LOS DATOS
SE UTILIZA ALGUNOS METODOS EN MI CASO APRENDI A USAR EL METODO DE LA BURBUJA QUE ES EL SIGUIENTE:
PARA UN VECTOR SERIA.
CODIGO DE (METODO DE LA BURBUJA CON VECTORES)
en este caso es un vector que almacena 7 datos, con este codigo
podremos ordenar de la foma que deseen, de mayor a menor o viceversa.
public vector(50) as integer
Dim B As Integer
For I = 0 To FILA - 1
For J = 0 To FILA - 2
If VECTOR(J) > VECTOR(J + 1) Then
B = VECTOR(J + 1)
VECTOR(J + 1) = VECTOR(J)
VECTOR(J) = B
End If
Next
Next
CODIGO DE (METODO DE LA BURBUJA CON MATRICES)
EN ESTE Caso es de 6 filas y 6 columnas
donde FI1 y CO1 son las cordenadas y FI2 y CO2 son cordenadas
alternas que se usan como acumulador para mover los datos segun
el orden que le quieras dar.
PUBLIC MATRIZ_1(6,6) AS INTEGER
Dim C As Integer
For CO1 = 0 To 6
For FI1 = 0 To 6
For CO2 = 0 To 6
For FI2 = 0 To 6
If MATRIZ_1(FI1, CO1) > MATRIZ_1(FI2, CO2) Then
C = MATRIZ_1(FI2, CO2)
MATRIZ_1(FI2, CO2) = MATRIZ_1(FI1, CO1)
MATRIZ_1(FI1, CO1) = C
End If
Next
Next
Next
Next
BUENO OTROS CODIGOS QUE SERAN MUY UTIL EN ESTRUCTURA DE DATOS SON ESTOS:
DONDE LA CLASE (CLASS.VB) ES LO QUE UDS DEBEN TRABAJAR EN EL PROGRAMA.
DEBEN TENER DIFERENTES (CLASS.VB)
BUENO EN ESTE CASO NO CAMBIARE DE NOMBRE PERO
LES DEJO DE LA MANERA MÁS ENTENDIBLE POSIBLE.
NOTA: SI VAN A CAMBIARLE EL NOMBRE A LA CLASE
NO OLVIDEN DE DEJAR (.VB) AL FINAL, PARA
QUE NO TENGAN NINGUN PROBLEMA.
BUENO
¿QUE ES UN OBJETO?
ES LO PRICIPAL, O LO QUE DESEAMOS DESCRIBIR, EN ESTE CASO, EL PROGRAMA.
BUENO LES DEJO UN EJMP:
OBJETO = ANIMAL
CLASES: REPTILES ,PECES, AVES, ETC.
SUBCLASE: NOMBRE,COLOR,TAMAÑO,ETC.
BUENO ESPERO SE INGENIEN PENSANDO UNA PARA SUS PROGRAMAS PUES
YO HICE "HERAMIENTAS" PUES NO FUE MUY BUENO PERO BUENO VALIO
POR UNA NOTA.
EN LA CLASE QUE CODIFIQUEN AL COMIENZO, SEGUN SU NECESIDAD
PUES DEBERA VERSE CASI IGUAL A LA MIA, PUES EN MI CASO UN JUEGO DE CARTAS
"BLAC JACK" O 21
Public Class CARTAS
Public VALOR As String
Public TIPO As String
Public SIGUIENTE As CARTAS
Public Sub New(ByVal X As String, ByVal Y As String)
VALOR = X
TIPO = Y
End Sub
End Class
DESPUES PUBLICAR LA CLASE (JUEGO).
APILAR:
Public primero As JUEGO
Public aux As CARTAS
PUBLIC SIGUIENTE AS CARTAS
Public Sub INGRESO(ByVal DATOS As CARTAS)
If IsNothing(PRIMERO) Then
PRIMERO = DATOS
Else
DATOS.SIGUIENTE = PRIMERO
PRIMERO = DATOS
End If
End Sub
BUENO HACI PODREMOS APILAR UNA PILA SIN PROBLEMAS,
AHORA DESAPILAR LA PILA UN DATO A LAS VEZ.
Public Sub DESAPILAR()
If IsNothing(PRIMERO) Then
MSGBOX ("PILA VACIA")
Else
PRIMERO = PRIMERO.SIGUIENTE
End If
End Sub
BUENO PARA DESPILAR TODA LA PILA SIN NECESIDAD
DE UNO POR UNO PUES EL CODOGO ES EL SIGUIENTE.
Public Sub BORRAR()
While Not IsNothing(PRIMERO)
PRIMERO = PRIMERO.SIGUIENTE
End While
End Sub
BIEN AHORA VOY A ENSEÑARLES EL CODOGO PARA VER UNA PILA.
SE LA PUDE MOSTRAR DE DIFIRENTES MANERAS.
EN ESTE CASO SERA CON UN LISTBOX.
Public Sub ver(ByVal LB As ListBox)
Dim AUX As CARTAS
AUX = PRIMERO
LB.Items.Clear()
While Not IsNothing(AUX)
LB.Items.Add("*****************")
LB.Items.Add(AUX.VALOR)
LB.Items.Add(AUX.TIPO)
LB.Items.Add("*****************")
AUX = AUX.SIGUIENTE
End While
End Sub
AHORA TENIENDO ESO CREAREMOS LA PILA PUES EN EL (FORM1.VB)
PUES NO OLVIDEN DE PUBLICAR LAS SUBCLASES PARA NO TENER
NINGUN ERROR, EN CASO DE QUE LE APARESCA UN ERROR VERIFICAR
BIEN LAS PUBLICACIONES, SI.
PUES EN MI CASO ES EL SIGUIENTE CODIGO.
Public PI As PILA = New PILA
Public CAR As CARTAS
Public TIPOIMAGEN As String
Public NUM As String
AQUI RECIEN CREAS LA PILA O MAS EXPLICITO DONDE GUARDAS
LOS DATOS.
PUES EN EL BUTTON APILAR VA ESTO
CAR = New CARTAS(NUM, TIPOIMAGEN)
PI.INGRESO(CAR)
DONDE EL (NUM ) ES EL NUMERO DE CARTAS Y EL OTRO ES EL
TIPO DE IMAGEN.
BUENO UN CONSEJO,SI LES PIDEN VALORES ALEATORIOS HAGALON
DE LA SIGUIENTE MANERA.
Public Function CTIP() As Integer
Randomize()
Y = Rnd() * 3
Return Y
End Function
BUENO PARA MOSTRAR LOS DATOS LLAMAMOS A LA CLASE VER QUE
ES LA SIGUIENTE:
PI.ver(L_MOSTRAR)
DONDE L_MOSTRAR ES EL LISTBOX DONDE MUESTRO LAS CARTAS
PUES PARA DESAPILAR HAGO ESTO EN BUTTON DESAPILAR
PI.DESAPILAR()
PUES NO OLVIDEN QUE (PI.) ES LA IDENTIFICACION DE LA
SUBCLASE. SIRVE PARA LLAMAR.
AL MOMENTO QUE CODIFIQUEN SEPAN QUE PUEDEN MOSTRAR MAS
DATOS COMO: NOMBRE , CELULAR, APELLIDOS , DIRECCION , ETC.
Y TENDRAN QUE COLOCAR (AUX. ) Y LO QUE VAN A MOSTRAR
NOTA: NO OLVIDEN DE PUBLICAR BIEN ESTOS DATOS, EJM:
PALABRAS = STRING
NUMEROS = INTEGER
FECHAS = DATE
NUMEROS DECIMALES = DOUBLE
VERDADERO O FALSO = BOOLEAN
POR ULTIMO, EN LA PARTE DE LO QUE ES PILA PUES SI
TIENE QUE HACER ALGUN CALCULO, LA MEJOR MANERA ES LA SIGUIENTE.
Public Sub SUMAR(ByVal X AS INTEGER, ByVal Y AS INTEGER)AS INTEGER
Dim Z As Integer
Z = X + Y
MsgBox("LA SUMA ES " + Z.ToString)
RETURN (Z)
End Sub
BUENO ESPERO HABER AYUDADO UN POCO CON LO QUE ES PILA
EN LA SIGUIENTE PARTE ESTA LO QUE ES COLA.
ES CASI LO MISMO PERO CON LA FUNCION DE LIFO.
ESPERO ME COMENTEN ALGUNA DUDA SI, PUES O ME DIGAN
LO QUE LES PARECIO MI EXPLICACION, AHHH PUES ME DESPIDO,
ESPERO ESTUDIEN DURO, PARA SALIR A DELANTE.
DIOS LES BENDIGA CHAO ATT FVD.
lunes, 24 de octubre de 2011
ESTRUCTURA DE DATOS (PRIMERA PARTE)
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario