Documentos de Académico
Documentos de Profesional
Documentos de Cultura
(MATRICES)
1
Contenido
2
TABLAS BIDIMENSIONALES
(MATRICES)
3
Matriz
Arreglo de datos, organizados en filas y
columnas.
n+1 columnas
a00 a01 ... a0j ... a0n
a10 a11 ... a1j ... a1n
A=
ai0 ai1 ... aij ... ain
am0 am1 ... amj ... amn
m+1 filas
4
METODOLOGIA DE LA
PROGRAMACIÓN
A
Matriz A de
0
0 1
1 2
2 …………………
………………… N
N
M+1 filas y
0
0 …………………
………………… N +1columnas
1
1 …………………
…………………
2
2 …………………
…………………
…………………
…………………
M
M …………………
………………… (M +1)x (N+1)
Componentes
5
Declaración de matrices
La declaración de una matriz especifica el nombre de la
matriz, el numero de elementos de las misma y el tipo de
estos:
Donde:
Variable es el nombre de la matriz
Dimensión es una lista de expresiones numérica, separadas
por comas y que definen las dimensiones de la matriz
Tipo: Define el tipo de la variable( Integer, Doble, string,
Boolean .. Etc. )
6
¿Cómo definir matrices en Visual Basic?
n +1columnas
8
Direccionamiento de un elemento:
A (fila, columna)
↑ ↑ ↑
Identificador Valor, variable o expresión
(numérica entera)
9
En general, los elementos en una matriz se
almacenan en la memoria interna de la
computadora por columnas, es decir:
A(0,0), A(1,0), A(2,0), …, A(m,0), A(0,1), A(1,1),
A(2,1), …………A(m,1),A(0,2)…………….…,A(m,n)
A
0 1 2 n
0
1
2
10
Procesos con matrices
Lectura: desde cualquier medio de
entrada (teclado, archivo, etc).
Cálculos y Relaciones Lógicas: Los
elementos de la matriz pueden intervenir
en operaciones lógicas y matemáticas
como cualquier variable.
Salida de resultados: hacia cualquier
medio de salida (pantalla, archivo, etc).
11
Leer una matriz por teclado:
Inicia recorrido
For F = O To M filas
Next columnas
Termina
recorrido filas
12
Sumar dos matrices
For i = 0 To m
For j = 0 To n
C(i,j) = A(i,j) + B(i,j)
Next
Next
13
Transpuesta de una matriz
A(m+1)x(n+1) At(n+1)x(m+1)
14
Transpuesta de una matriz
A(m+1)x(n+1) At(n+1)x(m+1)
15
Transpuesta de una matriz
Transpuesta
A
de
A
una
(m+1)x(n+1)
t
matriz
(n+1)x(m+1)
A(m+1)x(n+1) At(n+1)x(m+1)
17
MATRIZ DEL REACTOR
DIAS
FLUJO
0 1 2 6
0
1
2
HORAS
7
19
20
21
CODIFICACION EN VISUAL BASIC
Module Module1
Sub Main()
Dim FLUJO(7, 6), C, F, WDÍA, WMAY, WHORA, PROM, SUMA As
Integer
Dim WMEN, WMENDÍA, WMENHORA As Integer
WMAY = 0
WMEN = 999
‘CARGA DE LA MATRIZ
For F = 0 To 7
For C = 0 To 6
FLUJO(F, C) = Console.ReadLine
Next
Next
22
For F = 0 To 7
For C = 0 To 6
If FLUJO(F, C) > WMAY Then
WMAY = FLUJO(F, C)
WDÍA = C
WHORA = F
End If
Next
Next
For F = 0 To 7
For C = 0 To 6
If FLUJO(F, C) < WMEN Then
WMEN = FLUJO(F, C)
WMENDÍA = C
WMENHORA = F
End If
Next
Next
23
For C = 0 To 6
For F = 0 To 7
SUMA = SUMA + FLUJO(F, C)
Next
PROM = SUMA / 8
Console.WriteLine("PROMEDIO DIARIO" & C & "ES =>" & PROM)
PROM = 0
SUMA = 0
Next
Console.WriteLine("FLUJO MAYOR=>" & WMAY)
Console.WriteLine("FUE EL DÍA =>" & WDÍA)
Console.WriteLine("FUE LA HORA =>" & WHORA)
Console.WriteLine("FLUJO MENOR =>" & WMEN)
Console.WriteLine("FUE EL DÍA =>" & WMENDÍA)
Console.WriteLine("FUE LAHORA =>" & WMENHORA)
Console.ReadLine()
End Sub
End Module
24
EJERCICIO 2
Una empresa produce 3 ácidos: Ac. clorhídrico,
Ac. Sulfúrico y Ac. Nítrico en sus 7 fábricas, y lo
venden por litros. Haga un programa que calcule:
25
MATRIZ DE LA PRODUCCION DE ACIDO
PROD ACIDOS
0 1 2
0
1
2
FABRICAS
3
4
5
6
INICIO
F=0
F>6
C=0
C>2
C=C+1
F=F+1
A
27
A
F = 0
F > 6
C = 0
C > 2
S1 = S1 + PROD(I)
C = C + 1
S1 > FABMAY
FABMAY = S1
S1 = 0
F = F + 1
A
28
A
C = 0
C > 2
F = 0
F > 6
S2 = S2 + PROD (I)
F = F + 1
C = C + 1
S2 > ACDMAY
ACDMAY = S2
S2 = 0
C =C + 1
FIN 29
Variables F, C, S1, S2, FABMAY, ACDMAY de tipo entero
PROD(6,2) matriz de tipo entero
Para F = 0 hasta 6 hacer
Para C = 0 hasta 2 hacer
Leer PROD(F,C)
Fin para
Fin para
Para F = 0 hasta 6
Para C = 0 hasta 2
S1 = S1 + PROD(F,C)
Fin para
Si S1 > FABMAY entonces
FABMAY = S1
Fin si
S1 = 0
Fin para
30
Para C = 0 hasta 2
Para F= 0 hasta 6
S2 = S2 + PROD(F,C)
Fin para
Si S2 > ACDMAY entonces
ACDMAY = S2
Fin si
S2 = 0
Fin para
ESCRIBIR(" LA FABRICA QUE PRODUJO MAS LITROS
DE ACIDOS FUE LA DE " & FABMAY & " LITROS EN
TOTAL ")
ESCRIBIR(" EL ACIDO MAS PRODUCIDO FUE LA DE " &
ACDMAY & " LITROS EN TOTAL ")
Fin
31
EJERCICIO 3
Capturar una tabla que nos muestre
el peso en libras de los tres
jugadores claves de 4 equipos de
fútbol, desplegarlos en otra tabla
pero convertidos a kg. ( una libra =
.454 kg.).
Private Sub Button1_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles Button1.Click
Dim f, c, jug(3, 2) As Double
jug(0, 0) = TextBox1.Text
jug(0, 1) = TextBox2.Text
jug(0, 2) = TextBox3.Text
jug(1, 0) = TextBox4.Text
jug(1, 1) = TextBox5.Text
jug(1, 2) = TextBox6.Text
jug(2, 0) = TextBox7.Text
jug(2, 1) = TextBox8.Text
jug(2, 2) = TextBox9.Text
jug(3, 0) = TextBox10.Text
jug(3, 1) = TextBox11.Text
jug(3, 2) = TextBox12.Text
For c = 0 To 2
For f = 0 To 3
jug(f, c) = jug(f, c) * 0.454
If c = 0 Then
ListBox1.Items.Add(jug(f, c))
End If
If c = 1 Then
ListBox2.Items.Add(jug(f, c))
End If
If c = 2 Then
ListBox3.Items.Add(jug(f, c))
End If
Next
Next
End Sub
Ejercicio 4