Matrices (Arreglos Bidimensionales) •Definición: Una matriz (a nivel computacional) se define como una variable que permite almacenar m x n datos del mismo tipo organizados en m filas x n columnas. •Declaración Fila Columna DIM nombredelamatriz ( m , n ) as Tipo de Dato m y n DEBEN SER CONSTANTES 00 01 02 03 04 10 11 12 13 14 20 21 22 23 24 30 31 32 33 34 40 41 42 43 44 Ejemplo: DIM Prueba(4,4) as Single O TAMBIÉN DIM Prueba(1 to 4, 1 to 4) as Single 11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44 Matrices (Arreglos Bidimensionales) • Características − Todos los elementos son del mismo tipo − La matriz tiene un único nombre − Los datos están ordenados según el orden de los subindices − Todos los valores de un arreglo se inicializan en “0” para datos numéricos y cadena vacía para datos tipo cadena. Vectores (Arreglos Unidimensionales) Sub Dim Vector(10) As Single For i = 0 To 10 Vector(i) = Val(InputBox("Valor")) Next i For i = 0 To 10 Print "Vector Coef Pos " & i & " = " & Coef(i) Next i End Sub Concatenación Unión de Textos Pos Valor 0 12 1 55 2 46 3 11 4 79 5 36 6 45 7 25 8 89 9 74 10 25 Matrices (Arreglos Bidimensionales) Ejemplo: En el ejemplo a continuación se le solicita al usuario que ingrese los valores que rellenaran la matriz en la posición fila i y columna j, y luego se visualizan. Dim Prueba(5, 5) As Single j i For i = 1 To 5 For j=1 To 5 Prueba( i , j ) = Val(InputBox("Valor “ & i & “,” & j)) Next j Next i For i = 1 To 5 For j=1 To 5 Print “Matriz Prueba Pos " & i & “,” & j & " = " & Prueba( i , j ) Next j Next i 1 2 3 4 5 1 1,1 1,2 1,3 1,4 1,5 2 2,1 2,2 2,3 2,4 2,5 3 3,1 3,2 3,3 3,4 3,5 4 4,1 4,2 4,3 4,4 4,5 5 5,1 5,2 5,3 5,4 5,5 Matrices (Arreglos Bidimensionales) Ejercicio 1: Generar un programa de VBasic que permita dado dos Matrices, realizar las operaciones suma y resta matricial entre estas. Command1 Text3 Text1 Command2 Text2 Text4 Combo1 List1 List2 Command4 Command3 List3 Variable Globales y Variables Locales Variables Locales: son aquellas que existen sólo dentro del procedimiento o función en el cual se han declarado. Todas la variables declaradas dentro de un procedimiento o función son por defecto variables locales. Ejemplo: Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 1 To FilasA A(i, j) = Val(InputBox("Valor " & i & "," & j)) temp = temp & " " & Str$(A(i, j)) Next j Next i End Sub Variable Globales y Variables Locales Variables Globales: son aquellas que tienen acción en todo el programa y pueden ser llamada y modificadas dentro de cualquier procedimiento o función. Cualquier variable declarada fuera de procedimientos o funciones son por defecto variables globales de ese formulario. Ejemplo: Dim A(i,j) as Single Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 1 To FilasA A(i, j) = Val(InputBox("Valor " & i & "," & j)) temp = temp & " " & Str$(A(i, j)) Next j Next i End Sub Variable Globales y Variables Locales Variables Globales: se puede declarar una variable global, de forma tal que pueda ser accesible por todo procedimiento o función de cualquier formulario. Para ello hace falta declararla dentro de un nuevo módulo como Global o Public. Ejem.: Global Prueba as Integer ó Public Prueba as integer Matrices (Arreglos Bidimensionales) Ejercicio 2: Agregar al ejercicio anterior la opción de Transponer las matrices A y B. Matrices (Arreglos Bidimensionales) Rutina para Introducción de la Matriz: For i = 1 To FilasM For j = 1 To ColumnasM+1 Matriz(i, j) = Val(InputBox("Valor " & i & "," & j)) temp = temp & " " & Str$(A(i, j)) Next j List1.AddItem (temp) temp = "" Next i