Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo crear una matriz en el módulo vb

Cómo crear una matriz en el módulo vb

Hay dos tipos de matrices en Visual Basic: matrices de tamaño fijo, que siempre mantienen el mismo tamaño, y matrices dinámicas, que pueden cambiar de tamaño en tiempo de ejecución. Los arreglos dinámicos se analizan en detalle en "Arreglos dinámicos" más adelante en este capítulo.

Declarar un arreglo de tamaño fijo

Hay tres formas de declarar un arreglo de tamaño fijo, dependiendo del rango de validez que debe tener el arreglo:

Para cree una matriz normal. Declare la matriz utilizando la declaración pública en la sección de declaración del módulo.

Para crear una matriz a nivel de módulo, declare la matriz usando la declaración Privada en la sección de declaración del módulo.

Para crear una matriz local, declare la matriz usando la declaración privada en el procedimiento almacenado.

Establecer límites superior e inferior

Utilice paréntesis después del nombre de la matriz para declarar los límites superior e inferior de la matriz. El límite superior no debe exceder el rango del tipo de datos Long (-2.147.483.648 a 2.147.483.647). Por ejemplo, la siguiente declaración de matriz puede aparecer en la sección de declaración de un módulo:

Contadores tenues (14) como entero '15 elementos.

Sumas tenues (20) como doble ' 21 elementos.

Para crear una matriz normal, reemplace Dim con Public.

Contadores públicos (14) como enteros

Sumas públicas (20) como dobles

En el procedimiento almacenado, Dim usa la misma declaración:

Contadores atenuados (14) como enteros

Sumas atenuadas (20) como dobles

La primera declaración crea una matriz de 15 elementos, indexados del 0 al 14. La segunda declaración crea una matriz de 21 elementos, con índices que van de 0 a 20.

Para especificar un límite inferior, debe utilizar la palabra clave To para proporcionar el límite inferior explícitamente (para el tipo de datos Largo):

Contadores atenuados (1 a 15) como entero

Dim Sums (100 a 120) como cadena

En la declaración anterior, los contadores están indexados del 1 al 14. Los contadores tienen un rango de índice de 1 a 15, mientras que las sumas tienen un rango de índice de 100 a 200.

Matrices que contienen otras matrices

Puede crear matrices de tipos de datos variables y ubicarlas junto con matrices de diferentes tipos de datos. El siguiente código crea dos matrices, una que contiene números enteros y la otra que contiene cadenas. Luego declare una tercera matriz Variant y coloque las matrices de enteros y cadenas en ella:

Private Sub Command1_Click ()

Dim intX As Integer 'Declara la variable de contador.

'Declara y coloca una matriz de números enteros.

Atenuar contadoresA (5) como entero

Para intX = 0 a 4

contadoresA (intX) = 5

Siguiente intX

'Declara y coloca una matriz de cadenas.

Atenuar contadoresB (5) como cadena

Para intX = 0 a 4

contadoresB (intX) = "hola"

Siguiente intX

Dim arrX (2) As Variant 'Declara una nueva matriz de dos elementos.

arrX (1) = contadoresA () 'Mover otra matriz a la matriz.

arrX (2) = contadoresB ()

MsgBox arrX (1) (2) 'Muestra los miembros de cada array.

MsgBox arrX (2) (3)

End Sub

Matriz multidimensional

A veces es necesario rastrear y registrar información relevante en la matriz. Por ejemplo, para rastrear cada píxel en la pantalla de una computadora, es necesario hacer referencia a sus coordenadas X e Y. Esto requiere almacenar los valores en una matriz multidimensional.

Se pueden declarar matrices multidimensionales en Visual Basic. Por ejemplo, la siguiente declaración declara una matriz bidimensional de 10 × 10 en un procedimiento almacenado.

Matriz estática A (9, 9) como doble

Puede declarar dos dimensiones, o cualquiera de las dos dimensiones, y utilizar un límite inferior explícito:

Matriz estática A (1 a 10, 1 a 10) como doble

Puede generalizar todo esto a matrices de más de dos dimensiones. .Por ejemplo:

Dim MultiD (3, 1 a 10, 1 a 15)

Esta declaración crea una matriz tridimensional de tamaño 4 × 10 × 15. El número total de elementos es el producto de las tres dimensiones, que es 600.

Nota Cuando aumenta la dimensionalidad de una matriz, el espacio de almacenamiento que ocupa aumenta drásticamente, así que tenga cuidado al utilizar matrices multidimensionales. Tenga más cuidado al utilizar matrices de variables, ya que requieren más espacio de almacenamiento.

Uso de bucles para manipular matrices

Las matrices multidimensionales se pueden procesar de manera eficiente anidándolas usando bucles For. Por ejemplo, en MatrixA, puede asignar un valor a cada elemento según su posición en la matriz:

Dim I As Integer, J As Integer

Static MatrixA(1 To 10 , 1 A 10) Como Doble

Para I = 1 A 10

Para J = 1 A 10

MatrizA (I, J) = I * 10 J

Siguiente J

Siguiente I