Professional Documents
Culture Documents
MATRICES Y VECTORES EN
VISUAL BASIC
Profesor:
Jos Guzmn
Integrantes:
Suarez Carolina V- 16.390.821
Rangel Fabiola V- 18.450.424
Lizardi Hctor
V- 26.459.195
Valencia Edixon V-
INDICE
Introduccin.... 3
Arreglos Y Vectores En Visual Basic........ 4
Ejemplo...................... 5
Las Matrices:..................... 6
Ejemplo de matriz de 2 dimensiones. 7
Ejemplo de una matriz de 3 dimensiones.. 7
Vectores Dinmicos:..... 9
Ejemplo de vectores y arreglos dinmicos. 9
Funciones de VB para trabajar con Arreglos....... 10
Lbound y Ubound 10
Join.. 11
Split .... 13
Filter 14
Arreglos de Controles........................... 17
Conclusin 20
Bibliografa 21
INTRODUCCIN
El presente trabajo tiene como finalidad tratar de explicar la necesidad que existe
de agrupar datos del mismo tipo bajo un mismo nombre, ayudando as a mejorar
la memoria de la PC.
Aqu les estaremos aclarando ms acerca del tema de Vectores y Matrices, para
que sirve dentro del programa en Visual Basic.
Los puntos a tratar en nuestra exposicin y a continuacin en este trabajo son:
Arreglos y Vectores
Matrices
Arreglos y Vectores dinmicos.
Funciones de Visual Basic para trabajar con arreglos
Los arreglos de controles.
El cdigo es el siguiente:
Sub Arreglos01()
Dim Datos(10) As Integer
' Lectura de datos
For I = 1 To 10
Datos(I) = InputBox("Ingrese el dato: ")
Next
' Impresin de los datos
MsgBox ("Estos son los datos ledos:")
For I = 1 To 10
MsgBox (Datos(I))
Next
End Sub
LAS MATRICES:
Una matriz es un conjunto de valores relacionados lgicamente entre s, como el
nmero de estudiantes de cada curso en una escuela primaria. O sea, como se
dijo anteriormente, las matrices son arreglos de ms de 1 dimensin, es decir 2 o
ms, a diferencia de los vectores que poseen una sola dimensin.
Podemos imaginar una matriz bidimensional (2 dimensiones), como una
cuadrcula con filas y columnas, donde las filas representaran las coordenadas X
y las columnas las coordenadas Y.
A una matriz de 3 dimensiones o tambin llamada tridimensional se la puede
imaginar con las coordenadas X, Y, Z, y esta es ideal para representar figuras en
el espacio por ejemplo:
Las matrices se declaran en el cdigo de manera igual que los vectores, con la
diferencia que debemos indicar ms subndices de acuerdo a la cantidad de
dimensiones que posea la matriz.
Por lo general no se suele utilizar matrices de ms de 3 dimensiones.
Ejemplo de matriz de 2 dimensiones
Matrices bidimensionales de 6 x 8 (de 2 dimensiones).
Dim personas (1 to 6, 1 to 8) as string
Si luego quisiera acceder a los datos de la misma basta con referirnos a los
subndices
Por ejemplo:
personas (1, 1) = "Natalia"
personas (2, 1) = "pedro"
personas (1, 7) = "valeria"
personas (1, 8) = "jos"
personas (2, 2) = "carolina"
personas (4, 1) = "raquel"
personas (6, 2) = "eustaquio"
personas (6, 5) = "maria"
personas (6, 8) = "mariana"
El total de ndices posibles para almacenar datos o valores en el ejemplo anterior
es de 48 datos, ya que si multiplicamos 6 x 8 nos da como total 48 valores
posibles para utilizar en la matriz bidimensional.
En este ejemplo creamos una matriz de 3 dimensiones de 3 x 3 x 3
Dim cubo (1 to 3, 1 to 3, 1 to 3) as integer
Para acceder a los datos sera exactamente de la misma manera pero debemos
utilizar un ndice ms.
Ejemplo:
cubo (1, 1 , 1) = 50
cubo (1, 1 , 2) = 50
cubo (1, 1 , 3) = 50
cubo (1, 2 , 1) = 50
cubo (1, 2 , 2) = 50
cubo (1, 2 , 3) = 50
cubo (1, 3 , 1) = 50
cubo (1, 3 , 2) = 50
cubo (1, 3 , 3) = 50
cubo (2, 1 , 1) = 50
cubo (2, 1 , 2) = 50
cubo (2, 1 , 3) = 50
cubo (2, 2 , 1) = 50
cubo (2, 2 , 2) = 50
cubo (2, 2 , 3) = 50
cubo (2, 3 , 1) = 50
cubo (2, 3 , 2) = 50
cubo (2, 3 , 3) = 50
cubo (3, 1 , 1) = 50
cubo (3, 1 , 2) = 50
cubo (3, 1 , 3) = 50
cubo (3, 2 , 1) = 50
cubo (3, 2 , 2) = 50
cubo (3, 2 , 3) = 50
8
cubo (3, 3 , 1) = 50
cubo (3, 3 , 2) = 50
cubo (3, 3 , 3) = 50
En el ejemplo anterior, que es un poco extenso, es para que veamos todos los
posibles valores que puedes almacenar en una matriz de 3 x 3 x 3, y que da como
resultado un arreglo de 27 valores posibles.
VECTORES DINMICOS:
Visual Basic posee una sentencia o funcin que nos permite cambiar el largo de
un vector en tiempo de ejecucin, dndonos as ms flexibilidad, y de esta manera
no desperdiciar memoria y recursos de la pc creando vectores ms largos de lo
que realmente necesitamos.
Esta funcin se llama ReDim y ReDim Preserve, y un ejemplo de cmo aplicarla
sera de la siguiente manera:
Ejemplo de vectores y arreglos dinmicos
En lo siguiente, primero declaramos un vector de la forma como lo hacemos
siempre con la diferencia de que en vez de colocar un tamao declaramos el
vector solo con los parntesis:
Dim alumnos () as string
Ahora le establecemos un tamao, por ejemplo de 4 elementos y le agregamos
valores:
ReDimalumnos(1 To 4) As String
alumnos(1) = "Luciano"
alumnos(2) = "Esteban"
alumnos(3) = "Mariano"
alumnos(4) = "Pedro"
9
MsgBox vector(x)
Next i
JOIN
Esta funcin devuelve en una cadena el contenido de un array, cada elemento del
array se incluye en esa cadena y se separa cada elemento con el separador
indicado. El separador no se aade al final de la cadena, slo entre cada
elemento.
La forma de usar esta funcin es:
Join(list[, delimiter])
dnde:
list: es un array con los elementos que queremos "juntar" en una cadena.
delimiter: (opcional), es el separador que queremos usar para separar cada uno de
esos elementos, por defecto es un espacio. Si no queremos usar ningn
delimitador, es decir para que todos los elementos estn juntos, hay que indicar
una cadena vaca; si, por el contrario queremos usar cualquier otro carcter, lo
indicaremos en este parmetro de la funcin.
Ejemplo:
Private Sub cmdJoin_Click()
'Ejemplo de uso de Join, esta funcin devolver en una cadena
'cada elemento de un array separados por el delimitador que
'se le indique.
Dim tArray() As String
Dim i As Long
'Dimensionamos el array con cuatro elementos (de 0 a 3)
ReDim tArray(3)
'Asignamos valores al array
11
For i = 0 To 3
tArray(i) = "Elemento_" & i
Next
'=== Para hacer otras pruebas ===
'Separa cada palabra con el caracter indicado
'Text1 = Join(tArray, "/")
'Todas las palabras juntas, sin usar separador
'Text1 = Join(tArray, "")
'Las palabras se separan por un espacio, (valor por defecto)
Text1 = Join(tArray)
End Sub
Si no se indica delimitador: Text1 = Join(tArray), el contenido de Text1 ser:
Elemento_0 Elemento_1 Elemento_2 Elemento_3
Cada elemento se separa con un espacio.
Si se especifica un caracter como delimitador: Text1 = Join(tArray, "/"), el contenido
de Text1 ser:
Elemento_0/Elemento_1/Elemento_2/Elemento_3
Fjate que el delimitador no se aade al final.
Si se especifica una cadena vaca: Text1 = Join(tArray, ""), el contenido de Text1
ser:
Elemento_0Elemento_1Elemento_2Elemento_3
Es decir todos juntos, sin separacin.
12
SPLIT
Esta funcin es la inversa de Join, es decir, toma el contenido de una cadena y
forma un array con cada una de las palabras, (o serie de palabras separadas por
un delimitador dado, subcadena que la llaman).
La forma de usar esta funcin es:
Split(expression[, delimiter[, count[, compare]]])
dnde:
expresion: es una cadena, o expresin que de como resultado una cadena, de la
que queremos sacar los elementos.
delimiter: (opcional), es el separador que le indicar a la funcin como estn
separados los elementos; por defecto es un espacio. Si el delimitador es una
cadena vaca, se devolver un array con slo un elemento conteniendo toda la
cadena.
count: (opcional), el nmero de elementos que se devolver en el array, si no se
indica o se usa -1, se devolver cada subcadena en un elemento del array. Si este
valor es menor que el nmero de subcadenas, en el ltimo elemento del array se
asignar el resto de la cadena.
compare: (opcional), el tipo de comparacin que se realizar para evaluar el
delimitador dentro de la expresin.
ejemplo:
(esta funcin puede servir, entre otras cosas, para asignar a un array los
parmetros de la lnea de comandos)
Private Sub cmdSplit_Click()
'Devolver una cadena con una serie de palabras de un array
Dim tArray() As String
Dim sTmp As String
Dim i As Long
13
FILTER
Esta funcin devuelve un array que contiene los elementos de otro array, siempre
que coincida con el criterio de bsqueda especificado. Ambos arrays deben ser del
tipo String (cadena)
La forma de usar esta funcin es:
Filter(InputStrings, Value[, Include[, Compare]])
14
dnde:
InputStrings: es un array unidimensional del tipo cadena
Value: la cadena a buscar en InputStrings
Include: (opcional) Si se quiere que los elementos devueltos sean los que incluyen
la cadena indicada en Value o no, el valor por defecto es True, es decir, que se
devuelvan las que incluyan esa cadena a buscar.
Compare: (opcional), el tipo de comparacin a realizar.
Ejemplo:
Private Sub cmdFilter_Click()
'Filtra un array con la cadena indicada y devuelve un array
Dim tArray1() As String
Dim tArray2() As String
Dim i As Long
Dim sFilter As String
Dim bExclude As Boolean
'sFilter = "Guille"
sFilter = Text5
'Else
'
'
'End If
16
End With
End Sub
En este ejemplo, usando "Guille" como cadena a buscar e indicando que se
incluya esta palabra, devolvera los siguientes elementos:
Guillermo Nerja
Guillermo Barcelona
Si se indicara que devuelva los que no contengan la palabra "Guille", sera esto lo
que devolvera:
Pepito Nerja
Juanito Mlaga
Jordi Barcelona
Pilar Zaragoza
ARREGLOS DE CONTROLES
En Visual Basic 6.0, las matrices de controles se pueden utilizar para administrar
los controles de un formulario; proporcionaban funciones para compartir
controladores de eventos, recorrer en iteracin grupos de controles y agregar
controles en tiempo de ejecucin.
Compartir controladores de eventos
En Visual Basic 6.0, se pueden usar matrices de controles para especificar un
grupo de controles que compartan un conjunto de eventos. Los controles deban
ser del mismo tipo y tenan que tener el mismo nombre.
Por
ejemplo,
es
posible
que
quiera
agregar
dos
17
en
contenedores
diferentes.
Por
ejemplo,
los
19
CONCLUSIN
20
BIBLIOGRAFA
http://www.recursosvisualbasic.com
http://www.mundoprogramacion.com/
http://ucytprog.blogspot.com/
http://aprenderaprogramar.com/
21