Académique Documents
Professionnel Documents
Culture Documents
El concepto de array con Visual Basic coincide con el que se expone en el curso Bases de
la programacin nivel I de aprenderaprogramar.com en pseudocdigo. Veremos ahora
cmo declarar arrays estticos de una dimensin. La gestin de arrays multidimensionales y
dinmicos la veremos ms adelante.
ARRAYS UNIDIMENSIONALES
La sintaxis a emplear ser:
Dim [Nombre del array]([dimensin]) As [Tipo de
variable]
Si no se declara el tipo de variable el array ser tipo Variant tipo Object (segn la versin
de Visual Basic que estemos empleando) por defecto. Conviene tener cuidado con esto y
seguir las mismas pautas que hemos indicado para las variables. Ejemplos de declaracin
de arrays seran:
-
Cuando creamos un array del tipo A(n) podramos pensar que estamos creando n variables
que son A(1), A(2), A(3), ..., A(n). Pero en realidad estamos creando n+1 variables porque
Visual Basic crea tambin A(0). Esto conviene tenerlo en cuenta porque puede dar lugar a
alguna confusin. Disponer de un valor con ndice cero puede ser de utilidad en situaciones
como considerar cada variable asociada a una hora del da, empezando a contar desde la
hora cero hasta la 23 (total de 24 horas), cosa que es habitual en algunos pases. En lugar de
1, 2, 3, ..., 24 estaramos usando 0, 1, 2, ..., 23.
En la mayora de lenguajes de programacin se usa el ndice cero como primer ndice de un
array. No obstante, en las versiones menos recientes de Visual Basic se permita establecer
como primer ndice de un array el 1 mediante la instruccin Option Base. A travs de ella
se puede establecer como primer ndice del array el uno en vez de el cero en aquellas
versiones que lo admiten. Para ello se escribe en la cabecera del programa:
CLARA ESPINOZA
11 DE JULIO 2016
Si no se declara el tipo de variable el array ser tipo Variant u Object (segn la versin de
Visual Basic que utilicemos) por defecto. Conviene tener cuidado con esto y seguir las
mismas pautas que hemos indicado para las variables. La declaracin de una matriz
tradicional de m x n elementos podra ser:
Dim A(3, 2) As
Integer
El nmero de elementos declarados se calcula teniendo en cuenta que la numeracin de los
ndices empieza en cero, aunque ya hemos comentado que en algunas versiones existe una
clusula denominada Option Base que permite fijar como primer ndice de los arrays el
uno. En las versiones ms recientes de Visual Basic (o con Option Base fijado en cero)
tendremos una fila cero y una columna cero para la matriz declarada, con lo que el nmero
de elementos ser de 4 x 3 = 12. Decimos que hay 4 filas que son 0, 1, 2, 3 y tres columnas
que son 0, 1, y 2. Si la versin de Visual Basic lo permite y fijamos Option Base en uno, la
matriz ser de 3 filas (1, 2 y 3) y dos columnas (1 y 2) siendo por tanto el nmero de
elementos 3 x 2 = 6
Vamos a definir una matriz, array o arreglo de dos dimensiones a modo de ejemplo:
queremos almacenar en una matriz el nmero de alumnos con que cuenta una academia
ordenados en funcin del nivel y del idioma que se estudia. Tendremos 3 filas que
representarn Nivel bsico, medio o de perfeccionamiento y 4 columnas que representarn
los idiomas (1 = Ingls, 2 = Francs, 3 = Alemn y 4 = Ruso). La declaracin de dicha
matriz sera:
Dim Alumnosfxniveleidioma(3, 4)
Podramos asignar contenidos de la siguiente manera:
Alumnosfxniveleidioma(1,
CLARA ESPINOZA
1)
11 DE JULIO 2016
Alumnosfxniveleidioma(1,
Alumnosfxniveleidioma(1,
Alumnosfxniveleidioma(1,
Alumnosfxniveleidioma(2,
Alumnosfxniveleidioma(2,
Alumnosfxniveleidioma(2,
Alumnosfxniveleidioma(2,
Alumnosfxniveleidioma(3,
Alumnosfxniveleidioma(3,
Alumnosfxniveleidioma(3,
Alumnosfxniveleidioma(3,
2)
3)
4)
1)
2)
3)
4)
1)
2)
3)
4)
=
=
=
=
=
=
=
=
=
=
=
14
8
3
6
19
7
2
3
13
4
1
Los elementos de ndice cero no los estamos utilizando, aunque podramos hacerlo si
quisiramos.
La representacin grfica que podramos asociar a esta asignacin de datos sera esta
matriz:
Duracin del
conteo
CLARA ESPINOZA
Tipo de array
11 DE JULIO 2016
(Nc es Nmerodecoches)
Un da
Array de un localizador
(hora)
Varios das
Array de dos
localizadores
(hora y
da)
Varios meses
Array de tres
localizadores
(hora, da y
mes)
Varios aos
Array de cuatro
localizadores (hora, da,
mes y ao)
Varios siglos
Array de cinco
localizadores (hora, da,
mes, ao y siglo)
Nota: en este ejemplo estamos considerando que no vamos a usar los ndices cero de los
arrays, pero podramos hacerlo, de hecho es habitual.
Veamos lo que sera un ejemplo de programa con array multidimensional, en este caso
usando un tipo String.
CLARA ESPINOZA
11 DE JULIO 2016