Empleo de arreglo de variables

Anuncio
Empleo de arreglo de variables
Un arreglo o matriz es una colección de valores que se almacenan con un único nombre permitirá
procesar sus valores asociados de forma invidual o como grupo, utilizando un bucle For….Next o
Do.
Creación de un array
Es necesario declarar los arreglos. Si un arreglo se declara de forma local podrá ser utilizado
únicamente en el procedimiento donde haya sido declarado, pero si se pubilca de manera pública
enel módulo estándar podrá ser utilizado en cualquier parte del programa.
Nota:
Array de tamaño fijo: Contienen un número fijo de elementos.
Array dinámico: Contienen un número variable de elementos (expanden su tamaño durante la
ejecución del programa).
Información contenida en la instrucción de declaración de un array:
Nombre del array: Nombre del array en el programa.
Tipo de Dato: Tipo de dato que almacenará el array.
Número de dimensiones: 1 dimensión una lista de valores, 2 dimensiones una tabla de valores o
más una matriz tridimensional.
Número de elementos: Los elementos contenidos en el array se corresponden con su índice. El
primer índice del array es el 0.
Declaración de un array fijo
Sintáxis:
Public NombreArray(ElementoDim1, ElementoDim2….) As TipoDato
Public crea un array público o global
NombreArray nombre asignado al array
ElementoDim1 es el número de elementos contenidos en la primera dimensión del array.
ElementoDim2 es el número de elementos contenidos en la segunda dimensión del array.
TipoDato Tipo de dato incluído en el array
Nota: Si quieres declarar un arreglo local, se debe de sustituir la palabra Public por Static y
colocarlo en el procedimiento en donde se utilizará el arreglo.
Ejemplo:
Si se quiere declarar un arreglo unidimensional de rótulos denominados Empleados que pueda
almacenar hasta 10 nombres de empleados, se deberá introducir la siguiente declaración:
Public Empleados (9) As String
Ya que le arreglo comienza desde el 0.
Para declarar un arreglo bidimensional llamado Marcador que cuente con el espacio para
almacenar 2 filas y 9 columnas de datos del tipo variante, se debe de introducir la siguiente
instrucción:
Public Marcador (1,8) As Variant
Este será el espacio reservado en memoria RAM:
0 1 2 3 4 5 6 7 8
0
1
Para hacer referencia a los elementos de un array se debe de utilizar el nombre del array y el
índice del elemento encerrado entre parántesis.
La siguiente instrucción asignará el valor de Arturo al elemento 5 del array de Empleados:
Empleados (5)=”Arturo”
De igual forma, la siguiente instrucción asignará el número 4 a la fila 0 columna 2 al array
Marcador:
Marcador (0,2) = 4
Estas técnicas de indexación asignan o recuran el valor contenido en cualquier elemento del
array.
Práctica
Diseño del formulario
Recuerda que la instrucción Option Base
podemos a hacer que el primer elemento del
arreglo sea 1 y no 0 como lo establece Visual
Basic por defecto.
Esta sentencia asocia el número 1 con el primer
elemento de todos los arrays que se definan en
el programa.
Objeto
Command1
Command2
Command3
Form1
Propiedad
Caption
Name
Caption
Name
Caption
Name
Caption
AutoRedraw
Valor
Introducir Temperaturas
cmdIntroducirTemps
Mostrar Temperaturas
cmdMostrarTemps Para utilizar el método Print y
así mostrar información en el
Salir
formulario.
cmdsalir
Temperaturas
True
1. Ahora en el menú Proyecto, ejecuta el mandato Agregar módulo, y pulsa Abrir para crear
un módulo estándar donde se declarará el array.
En la ventana código aparecerá un módulo estándar.
2. Escribe las siguientes instrucciones en el modulo estándar:
Option Base 1
Public Temperaturas(7) As Variant
3. Cierra la ventana de código del módulo estándar e inserte el siguiente código al proyecto:
Private Sub cmdMostrarTemps_Click()
Print "Temperaturas máximas de la semana:"
Activa cada uno de los
Print
elementos contenidos en
For i% = 1 To 7
el arreglo y calcula el total
Print "Día "; i%, Temperaturas(i%)
de todas las temperaturas
Total! = Total! + Temperaturas(i%)
Next i%
Muestra la información almacenada en el array
Print
Print "Media de las temperaturas máximas: "; Total! / 7
End Sub
Private Sub cmdIntroducirTemps_Click()
Cls
Indicador$ = "Introducir la temperatura más alta."
For i% = 1 To 7
Título$ = "Día " & i%
Temperaturas(i%) = InputBox(Indicador$, Título$)
Next i%
End Sub
Borra cualquier instrucción Print
previa del formulario
Índice del Array (contador)
Caja que recibirá la entrada de datos
Private Sub cmdSalir_Click()
End
End Sub
Creación de un array dinámico
¿Qué ocurre cuando no se sabe con anticipación el tamaño del arreglo que necesita
utilizar? Será necesario usar los arreglos dinámicos, cuyo tamaño se define en tiempo de
ejecución.
Pasos para crear arrays dinámicos:
1. En el diseño se ha de especificar el nombre y el tipo del array omitiendo el número de
elementos de que constará el array.
Si se quiere crear un array público y dinámico se escribe la siguiente instrucción:
Public Temperaturas () As Variant
2. Añada el código para determinar, en tiempo ejecución, el número de elementos que
deberá contener el array:
a) Puedes preguntar al usuario usando un InputBox
b) Puedes calcular la dimensión del array en función de ciertos parámetros
proporcionados por el programa.
Ejemplo:
Días = InputBox(“¿Cuántos días?”, “Crear array”)
Obtenemos el tamaño del array directamente del usuario y lo asignará a la variable
Días.
3. Usa la variable ReDim para fijar el tamaño del Array:
ReDim Temperaturas(Días)
Esta instrucción define el tamaño del Array Temperaturas en tiempo de ejecución
utlizando la variable Días.
4. Usa el número obtenido como extremo superior de un bucle For…Next para trabajar
con los elemento del Array.
For i% = 1 To Días
Temperaturas( i%)=InputBox(Indicador$,Titulos$)
Next i%
For…Next utiliza la variable Días como límite superior del bucle.
TAREA: MODIFIQUE EL PROGRAMA ANTERIOR Y ESTABLEZCA QUE SEA EL USUARIO
QUIEN INTRODUZCA EL NÚMERO DE TEMPERATURAS QUE SE DESEAN ALMACENAR.
VERIFIQUE QUE EL NÚMERO DE DÍAS SEA MAYOR QUE 0 .
Descargar