SlideShare una empresa de Scribd logo
1 de 53
Vectores y
Matrices
CAPITULO
8
Ing. Mary Dunnia López N.
UNIVERSIDAD AUTONOMA GABRIEL RENE MORENO
Facultad Ciencias Exactas y Tecnología
Semestre I/2017
MAT20
4
Dados 50 números enteros, obtener el promedio de ellos y encontrar los
números que fueron mayores que el promedio.
• Una de las principales dificultades que se observan
con estos problemas es que para la resolución de
ambos es necesario almacenar la totalidad de los
datos a procesar.
• No sería eficiente crear N cantidad de variables para
guardar estos datos.
Es posible resolver estos problemas?
Por qué?
Como ?
Es una forma particular de organizar datos en una
computadora para que pueda ser utilizado de manera
eficiente.
Tipos de
Estructuras
Simples
Reales
Enteros
Carácter
Booleano
Cadenas
ARREGLOS: Vectores y
Matrices
Complejas
1. Introducción
• Definición
• Estructura Vector
2. Algoritmos
Típicos
• Cargar un Vector
• Mostrar un Vector
3. Algoritmos
útiles
• Ordenar un Vector
• Buscar en un Vector.
4. Ejercicios
• Ejercicio1
• Ejercicio2
Mi vector
Nombre de la variable
9 35 4 826
Elementos
Posición : 0
Mi vector[0] = 9
Un vector es una estructura de datos que puede almacenar un conjunto de
datos de un mismo tipo.
Características:
• Se identifica con un único nombre de variable.
• Cada elemento se almacena en posiciones uno a lado de la otra.
• Se accede a cada uno de sus elementos por la posición que
ocupa
Como se dijo anteriormente, los arreglos son estructuras de datos,
por lo tanto las mismas deben ser declaradas.
Dim
nombre_del_vector (tamaño) as
tipo_dato
Dim
nombreVector () as tipoDato
…
…
Redim nombreVector(10)
1. Asignación de valores
Alumnos(3) = “Juan Perez”
Precios(0) = “23.50”
2. En un vector los datos son todos del mismo tipo
23.5 00 0 0Juan Perez0
Option explicit on
Dim vec() as integer
Dim n as integer
Sub CarVec()
Dim x as string, i as integer
N= TextBox.Text
Redim Vec(N)
for i:= 0 to N-1 do
x=Grid1.item(i,0).value
vec(i)=cint(x)
next i
End Sub
Option Explicit on
Dim vec() as integer
Dim n as integer
Sub MosVec()
Dim i as integer, x as string
Redim vec(n)
for i:= 0 to n-1 do
x= cstr(vec(i) )
Grid1.Item(i,0).value=x
next i
End Sub
Pasos para resolver este problema:
 Leer un vector de N elementos
 Ordenar el vector por un método
Conocido
 Mostrar el Vector ordenado
Pasos para resolver este problema:
 Leer un vector de N elementos
 Ordenar el vector por el método Burbuja
 Buscar un elemento (X) entre todos los
elementos del vector
 Si encuentra el valor mostrar su posición.
Ordenar los elementos de un vector
Buscar un “valor en un vector de N elementos.
123 50 25 60 10 12
0 1 2 3 4 5
Primero
0 1 2 3 4 5
50 123 25 60 10 12Segundo
25 123 50 60 10 12
0 1 2 3 4 5
Tercero
0 1 2 3 4 5
25 123 50 60 10 12Cuarto
0 1 2 3 4 5
10 123 50 60 25 12Quinto
0 1 2 3 4 5
10 123 50 60 25 12N-1
Primer
pasada y el
primero
mas
pequeño
ahora esta
en la
primer
posición.
Burbuja
For i=0 to n-2
For j=i+1 to n-1
Vec(i) > Vec(j)
aux = Vec(i)
Vec(i) = Vec(j)
Vec(j) = aux
j
i
Fin
VF
textBox2
Grid1
Label3
Button1
Option Explicit on
Dim Vector1() as integer
‘Grid1 es el objeto DataGrid del formulario
'El SUB CarVec copia Grid1 al vector de programa llamado Vec1
Sub CarVec()
Dim n as integer, pos As Integer
'Obteniendo la dimensión del vector
n = CInt(text2.Text)
ReDim Vector1(n)
For pos = 0 To n - 1
Vector1(pos) = Grid1.Item(pos,0)
Next pos
End Sub
Dele 2 Click sobre el boton en el Formulario
Suba a la linea 1 del archivo y escriba las siguientes instrucciones
Private Sub Button1_Click()
Call CarVec
Call OrdVecPro
Call MosVec
End Sub
Avance con el cursor hasta la línea dentro del Button1_Click
'Ordenando por método de la burbuja
Sub OrdVecPro()
Dim i As Integer, j As Integer
Dim aux As Integer, n As Integer
n = CInt(Text2.Text)
'Comienza a recorrer el vector y ordenar
For i = 0 To n - 2
For j = i + 1 To n - 1
If (Vector1(i) > Vector1(j)) Then
aux = Vector1(i)
Vector1(i) = Vector1(j)
Vector1(j) = aux
End If
Next j
Next i
End Sub
'Mostrando el vector ordenado
Sub MosVec()
Dim n As Integer, pos As Integer
n = CInt(Text2.Text)
For pos = 0 To n - 1
Grid1.Item(pos,0) = Vector1(pos)
Next pos
End Sub
Precondición
El vector debe estar ordenado
Algoritmo
 Se compara el dato buscado con el elemento en el
centro del vector.
 Si coinciden, el dato ha sido encontrado
 Si el dato es mayor que el elemento central del
vector, se tiene que buscar el dato en segunda mitad
del vector.
 Si el dato es menor que el elemento central del
vector, se tiene que buscar el dato en la primera
mitad del vector.
textBox2Grid1
Label3
Button1TextBox3
TextBox4
Cargar 10 elementos en un vector, sumarlos y mostrar el
resultado.
Pasos para resolver este problema:
 Leer un vector de 10 elementos
 Sumar los elementos
 Mostrar el resultado de la suma en pantalla
Ejemplo 1
Muestra
resultados
Lectura del
vector
Suma de
los elementos
Pasos para resolver este problema:
1. Crear un nuevo proyecto con: TextBox1 (N),
DataGridView1 (Vector), Button (boton).
2. Haga 2click sobre el boton Button1.
Private SUB Button1_Click()
CALL Sumar()
End sub
3. Declarar el vector como Variable Global debajo de la
instrucción  Public Class Form1
Dim sumandos() as integer
4. Luego Crear el proceso Sumar.
Sub Sumar()
Dim suma as integer, N as integer, i as integer, x as string, mensage as
string
N = CInt(Text2.Text)
ReDim sumandos(N)
suma = 0
For i = 0 To N - 1
‘Grid1 es el nombre objeto tipo DataGrid del Formulario
x = Grid1.Item(i,0).value
sumandos(i) = CInt(x)
suma = suma + CInt(x)
Next i
mensage = "La suma total es: " + CStr(suma)
MsgBox («TOTAL»,VBOkOnly,mensage)
End Sub
Lectura desde el DataGrid
Suma de los elementos
Muestra resultados
Dimension del vector
 Leer un vector de 15 elementos
 Acumular en S la sumar los elementos
 Dividir S entre 15
 Mostrar el Promedio
 Recorrer el vector buscando y mostrando
los que sean mayor que el promedio.
Dados 15 números enteros, obtener el promedio de
ellos. Mostrar por pantalla dicho promedio y los números
ingresados que fueron mayores que el promedio
Pasos para resolver este problema:
Introducción
• Definición
• Características
Tipos de Matriz
• Matriz cuadrada
• MatrizTraspuesta
• Otras
Operaciones
• Suma
• Producto
Ejercicios
• GenMat1
• GenMat2
“Su principal aplicación práctica
esta en la solución de sistemas de
ecuaciones lineales”
Llamaremos matriz de orden (nXm) sobre el cuerpo de los
números reales a un conjunto de números reales dispuestos en
n filas y m columnas de la siguiente forma:
1. Un nombre
2. La dimensión u orden de una matriz, está dado por la
cantidad de filas (n) y la cantidad de columnas (m) que esta
tenga y se denota por (nxm).
3. Cada elemento de la matriz corresponde a un número real
representado de la forma (Aij) donde i corresponde a la
posición de fila y j corresponde a la posición de la columna
dentro de la matriz. (A2,3)
4. La cantidad de elementos de la matriz se determina
multiplicando la cantidad de filas por la cantidad de
columnas. (A2,3 => Tiene 6 elementos (2X3) )
Como se dijo anteriormente, los son
estructuras de datos, por lo tanto las mismas deben
ser declaradas con Dim.
Dim
nombre_matriz (fila,columna) as tipo_dato
Dim
nombre_matriz (,) as tipo_dato
Redim nombre_matriz(10,10)
• Asignación de valores
Alumnos(1,1) = 5
Alumnos(2,4) = 4
• Los valores de la matriz son todos del mismo tipo
9 35 4 826
9 35 4 826
9 35 4 826
Alumnos
Option Explicit on
Dim Mat() as integer
Dim n as integer, m as integer
Sub CarMat()
Dim x as string, i as integer
Dim j as integer
Redim Mat (n,m)
for i:= 0 to n-1 do
for j=0 to m-1 do
x=Grid1.Item(j,i)
Mat(i,j)=cint(x)
next j
next i
End Sub
DF ?
Option Explicit on
Dim Mat() as integer
Dim n as integer, m as integer
Sub CarMat()
Dim x as string, i as integer
Dim j as integer
Redim Mat (n,m)
for i:= 0 to n-1 do
for j=0 to m-1 do
x = cstr(Notas(i,j))
Grid1.Item(i,j)=x
next j
next i
End Sub
DF ?
“La sencillez de la matriz y el hecho de
que las matrices organicen información
numérica (y también de otros tipos
permite que sean utilizadas en casi todos
los ámbitos del saber científico: física,
sociología, astronomía, ingeniería y
tantos otros mas.”
Tipo de Matriz Ejemplo
1. Matriz FIla: Es la que tiene una sola fila. A(1 x M)
2. Matriz Columna: Es la que tiene una sola columna . A (N x 1)
3. Matriz nula si: Aij =0
Donde:
i => 0 <= i <= n
j => 0 <= j <= m
4. A será llamada matriz cuadrada
Donde: n=m.
5. Matriz diagonal :
Donde:
n = m => Igual Nro. Filas y Columnas
Aij =0 => Donde i <> j
Tipo de Matriz Ejemplo
6. A será llamada matriz identidad si:
n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum.
A(i,j) =0 => Donde i <> j
A(i,j) =1 => Donde i = j
7. Matriz triangular superior si:
n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum.
A(i,j) =0 => Donde i > j
8. Mmatriz triangular inferior si
n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum.
A(i,j) =0 => Donde i < j
9. Matriz simétrica
n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum.
A(i,j) = A(j,i)
10 20 102
50 35 36
52 74 32
El numero de Filas es
IGUAL al numero de
Columnas
10 20 102
50 35 36
52 74 32
Resulta de
Intercambiar
el elementos
en las filas
por las
columnas y
viceversa
La
matriz
debe ser
cuadrada
10 50 52
20 35 74
102 36 32
X=Mat(j,i)
Mat(j,i)=Mat(i,j)
Mat(i,j)=x
0 0 0
0 0 0
0 0 0
Todos sus
elementos
son nulos
10 20 102
50 35 36
52 74 32
Matriz cuadrada
donde sus elementos
Fila = columna
‘Este pedazo de código
‘muestra los elementos de la
‘diagonal principal de la
‘matriz Mat.
For i = 0 To n - 1
For j = 0 To n - 1
If (i = j) Then
msgbox(Mat(i,j))
End If
Next j
Next i
10 20 102
50 35 36
52 74 32
Matriz cuadrada. Observe las
posiciones donde :
Fila+columna= Dimension-1
‘Este pedaso de código
‘muestra los elementos de la
‘diagonal secundaria de la
‘matriz Mat.
Col=n-1
For i = 0 To n - 1
MsgBox(Mat(i,col))
Col=col-1
Next i
1 5 80
0 10 50
0 0 1
Matriz Cuadrada
cuyos elementos
debajo la diagonal
principal son todos
CERO
Dim i,j,n as integer
i=o
n=cint(text1.text) – 1
Error=false
While(i<=n AND error=false)
j=0
while(j<=n and error=false)
if (i > j)then
if (mat (i,j) <> 0)then error = true end if
end if
j=j+1
wend
i=i+1
Wend
If(error = true)then
msgbox(“No es triangular superior”)
Else
msgbox(“Es triangular superior)
End if
“La utilización de matrices (arrays)
constituye actualmente una parte
esencial de los lenguajes de
programación, ya que la mayoría de los
datos se introducen en los ordenadores
como tablas organizadas en filas y
columnas : hojas de cálculo, bases de
datos,....”
10 20
50 35
52 4
Las
matrices
deben ser
de igual
dimensión
10 50
20 35
10 36
El resultado
de la SUMA
ira en una
tercer
matriz
+
=
20 70
70 70
62 40
Tan solo
avanzar en
la matriz
resultante
Ve1 Ve2 Ve3
10 20
50 35
52 4
10 5 2 1
20 2 1 0* =
500 90 40 10
1200 320 135 50
600 268 108 52
El Numero de COLUMNAS de la primer matriz debe ser igual que el Numero
de filas de la segunda matriz
(Matriz1
(Matriz2
(Matriz3
(2,0)
(0,2) (2,2)
(2,1)
(1,2)
Matriz3(0,0)= [Matriz1(0,0)*Matriz2(0,0)]+[Matriz1(0,1)*Matriz2(1,0)]
Matriz3(0,0)= [10*10]+[20*20]
10 20
50 35
52 4
10 5 2 1
20 2 1 0* =
500
(0,0)
(0,0) (0,0
)
(Matriz1
Matriz2
(Matriz3
Matriz3(fil0,col0) =
∑ matriz1(fila 0) * matriz2(columna 0)
Matriz3(1,2)= [Matriz1(1,0)*Matriz2(0,2)]+[Matriz1(1,1)*Matriz2(1,2)]
Matriz3(1,2)= [50*2]+[35*1]
10 20
50 35
52 4
10 5 2 1
20 2 1 0* =
500
135
(1,0)
(0,2) (1,2)
(Matriz1
Matriz2
(Matriz3
Matriz3(fila 1,columna 2) =
∑ matriz1(fila 1) * matriz2(columna 2)
ProdMat
For fil=0 to n-1
For col=0 to m-1
Sum=0
col
fil
Fin
For pos=0 to p-1
pos
sum = sum + (mat1(fil, pos) * mat2(pos, col))
Mat3(fil,col) = sum
Ve2
Ve3
Ve1
Command1
Text1 Text2 Text3
Label5
“Generar matrices es muy similar a
generar series numéricas”
Para tomar en cuenta !!!
Para resolver matrices se debe siempre tratar de :
 Mapear la Matriz. En cada posición poner que fila y que columna ocupa
el elemento
 Identificar las posiciones de los elementos a analizar
 Encontrar la relación Fila Versus Columna para cada elemento que
se esta analizando en la matriz. Esto es la clave para ver como es mas
conveniente moverse en la matriz:
 Por fila y columnas ó por columna y luego filas.
 Una universidad necesita controlar los
resultados de los alumnos en las distintas
materias de la facultad de Ingeniería.
 El programa debe ingresar las calificaciones
de los alumnos y visualizar en pantalla la
media de notas por alumno y la media de
notas por materia.
 Las asignaturas están codificadas de 1 a 6 y
hay 30 alumnos.
• Generar la siguiente matriz
Generar la siguiente matriz

Más contenido relacionado

La actualidad más candente

Presentacion final
Presentacion finalPresentacion final
Presentacion finalJoel Sanchez
 
Matematik(ilieana) xia3
Matematik(ilieana) xia3Matematik(ilieana) xia3
Matematik(ilieana) xia3mathbmc
 
Trabajofinal.ht
Trabajofinal.htTrabajofinal.ht
Trabajofinal.htBernardo
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidasDiego Mejia
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidasLile Benavides
 
Tutorial
TutorialTutorial
Tutorialuneve
 
Metodos numericos capitulo 4
Metodos numericos capitulo 4Metodos numericos capitulo 4
Metodos numericos capitulo 4Juan Timoteo Cori
 
Integrales indefinidas 1
Integrales indefinidas 1Integrales indefinidas 1
Integrales indefinidas 1AmbrosioTineo
 
Ecuaciones Cuadráticas Y Sus Gráficas
Ecuaciones Cuadráticas Y Sus GráficasEcuaciones Cuadráticas Y Sus Gráficas
Ecuaciones Cuadráticas Y Sus GráficasCarmen Batiz
 
Algebralineal.docx
Algebralineal.docxAlgebralineal.docx
Algebralineal.docxEdwin Laguna
 
Derivacion e integracion
Derivacion e integracionDerivacion e integracion
Derivacion e integracionrorro97
 
3.metodo directo
3.metodo directo3.metodo directo
3.metodo directorjvillon
 
4 la derivada por formulas
4 la derivada por formulas4 la derivada por formulas
4 la derivada por formulasJesus Gil
 

La actualidad más candente (18)

2 vectores matrices
2 vectores matrices2 vectores matrices
2 vectores matrices
 
Presentacion final
Presentacion finalPresentacion final
Presentacion final
 
Matematica 1
Matematica 1Matematica 1
Matematica 1
 
calculo diferencial
 calculo diferencial   calculo diferencial
calculo diferencial
 
Matematik(ilieana) xia3
Matematik(ilieana) xia3Matematik(ilieana) xia3
Matematik(ilieana) xia3
 
Trabajofinal.ht
Trabajofinal.htTrabajofinal.ht
Trabajofinal.ht
 
Unidad 2 matrices
Unidad 2 matricesUnidad 2 matrices
Unidad 2 matrices
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidas
 
Integrales indefinidas
Integrales indefinidasIntegrales indefinidas
Integrales indefinidas
 
Tutorial
TutorialTutorial
Tutorial
 
Tema 8 integrales
Tema 8 integralesTema 8 integrales
Tema 8 integrales
 
Metodos numericos capitulo 4
Metodos numericos capitulo 4Metodos numericos capitulo 4
Metodos numericos capitulo 4
 
Integrales indefinidas 1
Integrales indefinidas 1Integrales indefinidas 1
Integrales indefinidas 1
 
Ecuaciones Cuadráticas Y Sus Gráficas
Ecuaciones Cuadráticas Y Sus GráficasEcuaciones Cuadráticas Y Sus Gráficas
Ecuaciones Cuadráticas Y Sus Gráficas
 
Algebralineal.docx
Algebralineal.docxAlgebralineal.docx
Algebralineal.docx
 
Derivacion e integracion
Derivacion e integracionDerivacion e integracion
Derivacion e integracion
 
3.metodo directo
3.metodo directo3.metodo directo
3.metodo directo
 
4 la derivada por formulas
4 la derivada por formulas4 la derivada por formulas
4 la derivada por formulas
 

Similar a Resvecmat

Similar a Resvecmat (20)

Cap7 1 vectores
Cap7 1 vectoresCap7 1 vectores
Cap7 1 vectores
 
Cap1.3 tutor recursividad matriz
Cap1.3 tutor recursividad   matrizCap1.3 tutor recursividad   matriz
Cap1.3 tutor recursividad matriz
 
Metodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosMetodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a Objetos
 
Semana 1
Semana 1Semana 1
Semana 1
 
jaisan
jaisanjaisan
jaisan
 
Algebra matrices
Algebra matricesAlgebra matrices
Algebra matrices
 
Algebra matrices
Algebra matricesAlgebra matrices
Algebra matrices
 
Ejercicios de vectores o arrays
Ejercicios de vectores o arraysEjercicios de vectores o arrays
Ejercicios de vectores o arrays
 
B2 T5 Vectores Ii
B2 T5 Vectores IiB2 T5 Vectores Ii
B2 T5 Vectores Ii
 
Algebra de Matrices RPM1 Ccesa007.pdf
Algebra de Matrices RPM1  Ccesa007.pdfAlgebra de Matrices RPM1  Ccesa007.pdf
Algebra de Matrices RPM1 Ccesa007.pdf
 
Algebra de Matrices RPM1 Ccesa007.pdf
Algebra de Matrices RPM1  Ccesa007.pdfAlgebra de Matrices RPM1  Ccesa007.pdf
Algebra de Matrices RPM1 Ccesa007.pdf
 
Introduccion al Calculo Matricial Ccesa007.pdf
Introduccion al Calculo Matricial Ccesa007.pdfIntroduccion al Calculo Matricial Ccesa007.pdf
Introduccion al Calculo Matricial Ccesa007.pdf
 
Unidad4 matrices_algebra superior_rosa_depena
Unidad4 matrices_algebra superior_rosa_depenaUnidad4 matrices_algebra superior_rosa_depena
Unidad4 matrices_algebra superior_rosa_depena
 
Cap7 2 matrices
Cap7 2 matricesCap7 2 matrices
Cap7 2 matrices
 
Intro Java 3
Intro Java 3Intro Java 3
Intro Java 3
 
Intro Java 3
Intro Java 3Intro Java 3
Intro Java 3
 
08b.-MATRICES-2.pdf
08b.-MATRICES-2.pdf08b.-MATRICES-2.pdf
08b.-MATRICES-2.pdf
 
2 matrices
2 matrices2 matrices
2 matrices
 
2 matrices
2 matrices2 matrices
2 matrices
 
matrices
matricesmatrices
matrices
 

Más de Mary Dunnia Lopez N. (20)

Cap2.1
Cap2.1Cap2.1
Cap2.1
 
Guia lab1
Guia lab1Guia lab1
Guia lab1
 
Cap4.2 visual basic.net
Cap4.2 visual basic.netCap4.2 visual basic.net
Cap4.2 visual basic.net
 
Cap5 1.1 tutor2 la_variable
Cap5 1.1 tutor2 la_variableCap5 1.1 tutor2 la_variable
Cap5 1.1 tutor2 la_variable
 
Cap5 1.4 tutor3 algoritmos repetititvos
Cap5 1.4 tutor3 algoritmos repetititvosCap5 1.4 tutor3 algoritmos repetititvos
Cap5 1.4 tutor3 algoritmos repetititvos
 
Cap5 1.3 tutor3 algoritmos condicionales
Cap5 1.3 tutor3 algoritmos condicionalesCap5 1.3 tutor3 algoritmos condicionales
Cap5 1.3 tutor3 algoritmos condicionales
 
Cap5 1.2 tutor2 algoritmos secuenciales
Cap5 1.2 tutor2 algoritmos secuencialesCap5 1.2 tutor2 algoritmos secuenciales
Cap5 1.2 tutor2 algoritmos secuenciales
 
Vectores
VectoresVectores
Vectores
 
Matrices
MatricesMatrices
Matrices
 
Cadenas
CadenasCadenas
Cadenas
 
Cap1.2 tutor recursividad vectores
Cap1.2 tutor recursividad   vectoresCap1.2 tutor recursividad   vectores
Cap1.2 tutor recursividad vectores
 
Cap30 intro
Cap30 introCap30 intro
Cap30 intro
 
Cap32 rep num
Cap32 rep numCap32 rep num
Cap32 rep num
 
Cap31 sist num
Cap31 sist numCap31 sist num
Cap31 sist num
 
Cap2
Cap2Cap2
Cap2
 
Contar digitos
Contar digitosContar digitos
Contar digitos
 
Cap1.1 recursividad
Cap1.1 recursividadCap1.1 recursividad
Cap1.1 recursividad
 
Cap0 2
Cap0 2Cap0 2
Cap0 2
 
Cap0 1
Cap0 1Cap0 1
Cap0 1
 
Cap0 3 tips
Cap0 3 tipsCap0 3 tips
Cap0 3 tips
 

Último

NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 

Último (20)

NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 

Resvecmat

  • 1. Vectores y Matrices CAPITULO 8 Ing. Mary Dunnia López N. UNIVERSIDAD AUTONOMA GABRIEL RENE MORENO Facultad Ciencias Exactas y Tecnología Semestre I/2017 MAT20 4
  • 2. Dados 50 números enteros, obtener el promedio de ellos y encontrar los números que fueron mayores que el promedio. • Una de las principales dificultades que se observan con estos problemas es que para la resolución de ambos es necesario almacenar la totalidad de los datos a procesar. • No sería eficiente crear N cantidad de variables para guardar estos datos. Es posible resolver estos problemas? Por qué? Como ?
  • 3. Es una forma particular de organizar datos en una computadora para que pueda ser utilizado de manera eficiente. Tipos de Estructuras Simples Reales Enteros Carácter Booleano Cadenas ARREGLOS: Vectores y Matrices Complejas
  • 4. 1. Introducción • Definición • Estructura Vector 2. Algoritmos Típicos • Cargar un Vector • Mostrar un Vector 3. Algoritmos útiles • Ordenar un Vector • Buscar en un Vector. 4. Ejercicios • Ejercicio1 • Ejercicio2
  • 5. Mi vector Nombre de la variable 9 35 4 826 Elementos Posición : 0 Mi vector[0] = 9 Un vector es una estructura de datos que puede almacenar un conjunto de datos de un mismo tipo. Características: • Se identifica con un único nombre de variable. • Cada elemento se almacena en posiciones uno a lado de la otra. • Se accede a cada uno de sus elementos por la posición que ocupa
  • 6. Como se dijo anteriormente, los arreglos son estructuras de datos, por lo tanto las mismas deben ser declaradas. Dim nombre_del_vector (tamaño) as tipo_dato Dim nombreVector () as tipoDato … … Redim nombreVector(10)
  • 7. 1. Asignación de valores Alumnos(3) = “Juan Perez” Precios(0) = “23.50” 2. En un vector los datos son todos del mismo tipo 23.5 00 0 0Juan Perez0
  • 8. Option explicit on Dim vec() as integer Dim n as integer Sub CarVec() Dim x as string, i as integer N= TextBox.Text Redim Vec(N) for i:= 0 to N-1 do x=Grid1.item(i,0).value vec(i)=cint(x) next i End Sub
  • 9. Option Explicit on Dim vec() as integer Dim n as integer Sub MosVec() Dim i as integer, x as string Redim vec(n) for i:= 0 to n-1 do x= cstr(vec(i) ) Grid1.Item(i,0).value=x next i End Sub
  • 10. Pasos para resolver este problema:  Leer un vector de N elementos  Ordenar el vector por un método Conocido  Mostrar el Vector ordenado Pasos para resolver este problema:  Leer un vector de N elementos  Ordenar el vector por el método Burbuja  Buscar un elemento (X) entre todos los elementos del vector  Si encuentra el valor mostrar su posición. Ordenar los elementos de un vector Buscar un “valor en un vector de N elementos.
  • 11. 123 50 25 60 10 12 0 1 2 3 4 5 Primero 0 1 2 3 4 5 50 123 25 60 10 12Segundo 25 123 50 60 10 12 0 1 2 3 4 5 Tercero 0 1 2 3 4 5 25 123 50 60 10 12Cuarto 0 1 2 3 4 5 10 123 50 60 25 12Quinto 0 1 2 3 4 5 10 123 50 60 25 12N-1 Primer pasada y el primero mas pequeño ahora esta en la primer posición.
  • 12. Burbuja For i=0 to n-2 For j=i+1 to n-1 Vec(i) > Vec(j) aux = Vec(i) Vec(i) = Vec(j) Vec(j) = aux j i Fin VF
  • 14. Option Explicit on Dim Vector1() as integer ‘Grid1 es el objeto DataGrid del formulario 'El SUB CarVec copia Grid1 al vector de programa llamado Vec1 Sub CarVec() Dim n as integer, pos As Integer 'Obteniendo la dimensión del vector n = CInt(text2.Text) ReDim Vector1(n) For pos = 0 To n - 1 Vector1(pos) = Grid1.Item(pos,0) Next pos End Sub Dele 2 Click sobre el boton en el Formulario Suba a la linea 1 del archivo y escriba las siguientes instrucciones Private Sub Button1_Click() Call CarVec Call OrdVecPro Call MosVec End Sub Avance con el cursor hasta la línea dentro del Button1_Click
  • 15. 'Ordenando por método de la burbuja Sub OrdVecPro() Dim i As Integer, j As Integer Dim aux As Integer, n As Integer n = CInt(Text2.Text) 'Comienza a recorrer el vector y ordenar For i = 0 To n - 2 For j = i + 1 To n - 1 If (Vector1(i) > Vector1(j)) Then aux = Vector1(i) Vector1(i) = Vector1(j) Vector1(j) = aux End If Next j Next i End Sub 'Mostrando el vector ordenado Sub MosVec() Dim n As Integer, pos As Integer n = CInt(Text2.Text) For pos = 0 To n - 1 Grid1.Item(pos,0) = Vector1(pos) Next pos End Sub
  • 16.
  • 17. Precondición El vector debe estar ordenado Algoritmo  Se compara el dato buscado con el elemento en el centro del vector.  Si coinciden, el dato ha sido encontrado  Si el dato es mayor que el elemento central del vector, se tiene que buscar el dato en segunda mitad del vector.  Si el dato es menor que el elemento central del vector, se tiene que buscar el dato en la primera mitad del vector.
  • 18.
  • 20. Cargar 10 elementos en un vector, sumarlos y mostrar el resultado. Pasos para resolver este problema:  Leer un vector de 10 elementos  Sumar los elementos  Mostrar el resultado de la suma en pantalla Ejemplo 1 Muestra resultados Lectura del vector Suma de los elementos
  • 21. Pasos para resolver este problema: 1. Crear un nuevo proyecto con: TextBox1 (N), DataGridView1 (Vector), Button (boton). 2. Haga 2click sobre el boton Button1. Private SUB Button1_Click() CALL Sumar() End sub 3. Declarar el vector como Variable Global debajo de la instrucción  Public Class Form1 Dim sumandos() as integer 4. Luego Crear el proceso Sumar.
  • 22. Sub Sumar() Dim suma as integer, N as integer, i as integer, x as string, mensage as string N = CInt(Text2.Text) ReDim sumandos(N) suma = 0 For i = 0 To N - 1 ‘Grid1 es el nombre objeto tipo DataGrid del Formulario x = Grid1.Item(i,0).value sumandos(i) = CInt(x) suma = suma + CInt(x) Next i mensage = "La suma total es: " + CStr(suma) MsgBox («TOTAL»,VBOkOnly,mensage) End Sub Lectura desde el DataGrid Suma de los elementos Muestra resultados Dimension del vector
  • 23.  Leer un vector de 15 elementos  Acumular en S la sumar los elementos  Dividir S entre 15  Mostrar el Promedio  Recorrer el vector buscando y mostrando los que sean mayor que el promedio. Dados 15 números enteros, obtener el promedio de ellos. Mostrar por pantalla dicho promedio y los números ingresados que fueron mayores que el promedio Pasos para resolver este problema:
  • 24. Introducción • Definición • Características Tipos de Matriz • Matriz cuadrada • MatrizTraspuesta • Otras Operaciones • Suma • Producto Ejercicios • GenMat1 • GenMat2
  • 25. “Su principal aplicación práctica esta en la solución de sistemas de ecuaciones lineales”
  • 26. Llamaremos matriz de orden (nXm) sobre el cuerpo de los números reales a un conjunto de números reales dispuestos en n filas y m columnas de la siguiente forma:
  • 27. 1. Un nombre 2. La dimensión u orden de una matriz, está dado por la cantidad de filas (n) y la cantidad de columnas (m) que esta tenga y se denota por (nxm). 3. Cada elemento de la matriz corresponde a un número real representado de la forma (Aij) donde i corresponde a la posición de fila y j corresponde a la posición de la columna dentro de la matriz. (A2,3) 4. La cantidad de elementos de la matriz se determina multiplicando la cantidad de filas por la cantidad de columnas. (A2,3 => Tiene 6 elementos (2X3) )
  • 28. Como se dijo anteriormente, los son estructuras de datos, por lo tanto las mismas deben ser declaradas con Dim. Dim nombre_matriz (fila,columna) as tipo_dato Dim nombre_matriz (,) as tipo_dato Redim nombre_matriz(10,10)
  • 29. • Asignación de valores Alumnos(1,1) = 5 Alumnos(2,4) = 4 • Los valores de la matriz son todos del mismo tipo 9 35 4 826 9 35 4 826 9 35 4 826 Alumnos
  • 30. Option Explicit on Dim Mat() as integer Dim n as integer, m as integer Sub CarMat() Dim x as string, i as integer Dim j as integer Redim Mat (n,m) for i:= 0 to n-1 do for j=0 to m-1 do x=Grid1.Item(j,i) Mat(i,j)=cint(x) next j next i End Sub DF ?
  • 31. Option Explicit on Dim Mat() as integer Dim n as integer, m as integer Sub CarMat() Dim x as string, i as integer Dim j as integer Redim Mat (n,m) for i:= 0 to n-1 do for j=0 to m-1 do x = cstr(Notas(i,j)) Grid1.Item(i,j)=x next j next i End Sub DF ?
  • 32. “La sencillez de la matriz y el hecho de que las matrices organicen información numérica (y también de otros tipos permite que sean utilizadas en casi todos los ámbitos del saber científico: física, sociología, astronomía, ingeniería y tantos otros mas.”
  • 33. Tipo de Matriz Ejemplo 1. Matriz FIla: Es la que tiene una sola fila. A(1 x M) 2. Matriz Columna: Es la que tiene una sola columna . A (N x 1) 3. Matriz nula si: Aij =0 Donde: i => 0 <= i <= n j => 0 <= j <= m 4. A será llamada matriz cuadrada Donde: n=m. 5. Matriz diagonal : Donde: n = m => Igual Nro. Filas y Columnas Aij =0 => Donde i <> j
  • 34. Tipo de Matriz Ejemplo 6. A será llamada matriz identidad si: n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum. A(i,j) =0 => Donde i <> j A(i,j) =1 => Donde i = j 7. Matriz triangular superior si: n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum. A(i,j) =0 => Donde i > j 8. Mmatriz triangular inferior si n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum. A(i,j) =0 => Donde i < j 9. Matriz simétrica n = m => Debe ser Matriz Cuadrada => Nro. Filas = Nro. Colum. A(i,j) = A(j,i)
  • 35. 10 20 102 50 35 36 52 74 32 El numero de Filas es IGUAL al numero de Columnas
  • 36. 10 20 102 50 35 36 52 74 32 Resulta de Intercambiar el elementos en las filas por las columnas y viceversa La matriz debe ser cuadrada 10 50 52 20 35 74 102 36 32 X=Mat(j,i) Mat(j,i)=Mat(i,j) Mat(i,j)=x
  • 37. 0 0 0 0 0 0 0 0 0 Todos sus elementos son nulos
  • 38. 10 20 102 50 35 36 52 74 32 Matriz cuadrada donde sus elementos Fila = columna ‘Este pedazo de código ‘muestra los elementos de la ‘diagonal principal de la ‘matriz Mat. For i = 0 To n - 1 For j = 0 To n - 1 If (i = j) Then msgbox(Mat(i,j)) End If Next j Next i
  • 39. 10 20 102 50 35 36 52 74 32 Matriz cuadrada. Observe las posiciones donde : Fila+columna= Dimension-1 ‘Este pedaso de código ‘muestra los elementos de la ‘diagonal secundaria de la ‘matriz Mat. Col=n-1 For i = 0 To n - 1 MsgBox(Mat(i,col)) Col=col-1 Next i
  • 40. 1 5 80 0 10 50 0 0 1 Matriz Cuadrada cuyos elementos debajo la diagonal principal son todos CERO Dim i,j,n as integer i=o n=cint(text1.text) – 1 Error=false While(i<=n AND error=false) j=0 while(j<=n and error=false) if (i > j)then if (mat (i,j) <> 0)then error = true end if end if j=j+1 wend i=i+1 Wend If(error = true)then msgbox(“No es triangular superior”) Else msgbox(“Es triangular superior) End if
  • 41. “La utilización de matrices (arrays) constituye actualmente una parte esencial de los lenguajes de programación, ya que la mayoría de los datos se introducen en los ordenadores como tablas organizadas en filas y columnas : hojas de cálculo, bases de datos,....”
  • 42. 10 20 50 35 52 4 Las matrices deben ser de igual dimensión 10 50 20 35 10 36 El resultado de la SUMA ira en una tercer matriz + = 20 70 70 70 62 40 Tan solo avanzar en la matriz resultante
  • 44. 10 20 50 35 52 4 10 5 2 1 20 2 1 0* = 500 90 40 10 1200 320 135 50 600 268 108 52 El Numero de COLUMNAS de la primer matriz debe ser igual que el Numero de filas de la segunda matriz (Matriz1 (Matriz2 (Matriz3 (2,0) (0,2) (2,2) (2,1) (1,2)
  • 45. Matriz3(0,0)= [Matriz1(0,0)*Matriz2(0,0)]+[Matriz1(0,1)*Matriz2(1,0)] Matriz3(0,0)= [10*10]+[20*20] 10 20 50 35 52 4 10 5 2 1 20 2 1 0* = 500 (0,0) (0,0) (0,0 ) (Matriz1 Matriz2 (Matriz3 Matriz3(fil0,col0) = ∑ matriz1(fila 0) * matriz2(columna 0)
  • 46. Matriz3(1,2)= [Matriz1(1,0)*Matriz2(0,2)]+[Matriz1(1,1)*Matriz2(1,2)] Matriz3(1,2)= [50*2]+[35*1] 10 20 50 35 52 4 10 5 2 1 20 2 1 0* = 500 135 (1,0) (0,2) (1,2) (Matriz1 Matriz2 (Matriz3 Matriz3(fila 1,columna 2) = ∑ matriz1(fila 1) * matriz2(columna 2)
  • 47. ProdMat For fil=0 to n-1 For col=0 to m-1 Sum=0 col fil Fin For pos=0 to p-1 pos sum = sum + (mat1(fil, pos) * mat2(pos, col)) Mat3(fil,col) = sum
  • 49. “Generar matrices es muy similar a generar series numéricas”
  • 50. Para tomar en cuenta !!! Para resolver matrices se debe siempre tratar de :  Mapear la Matriz. En cada posición poner que fila y que columna ocupa el elemento  Identificar las posiciones de los elementos a analizar  Encontrar la relación Fila Versus Columna para cada elemento que se esta analizando en la matriz. Esto es la clave para ver como es mas conveniente moverse en la matriz:  Por fila y columnas ó por columna y luego filas.
  • 51.  Una universidad necesita controlar los resultados de los alumnos en las distintas materias de la facultad de Ingeniería.  El programa debe ingresar las calificaciones de los alumnos y visualizar en pantalla la media de notas por alumno y la media de notas por materia.  Las asignaturas están codificadas de 1 a 6 y hay 30 alumnos.
  • 52. • Generar la siguiente matriz

Notas del editor

  1. Dim nombres(5) as string Dim nombres() as string …………………… …………………… Redim nombres(5)
  2. Se comienza comparando el primer elemento con el segundo, si están desordenados se intercambian. Luego se compara el segundo con el tercero, intercambiándolos si están desordenados. Este proceso que se realiza sobre todos los elementos constituye una pasada sobre el vector. Al terminar algunos de los elementos más pequeños se han “burbujeado” hacia arriba, mientras que los más grandes se han “hundido”, de aquí el nombre del método.
  3. Encontrando el Primero  Comenzar con el primer elemento (i) e ir comparando con el siguiente hasta el ultimo (j) Encontrando el Segundo  Al termniar de comparar el primero con todos saltar al segundo elemento (i)y comparar el segundo con todos
  4. Dim nombres(5,2) as string Dim nombres(2,8) as string …………………… …………………… Redim nombres(2,5)
  5. El recorrido de las matrices puede realizarse tanto por filas como por columnas, de acuerdo al problema a resolver
  6. No olvide aumentar el codigo suficente para que se armen las 3 matrices. No olvide que al hacer click en cada celda de Grid1 o Grid2 para pedir datos Grid3 debe quedar bloqueada para no permita modificar sus valores o datos Private Sub Command1_Click() Call Suma End Sub Private Sub Suma() Dim fil, col,a,b As Integer Dim nfil, ncol As Integer nfil = CInt(Combo1.Text) ncol = CInt(Combo2.Text) ReDim mat3(nfil - 1, ncol - 1) For fil = 0 To nfil - 1 For col = 0 To ncol – 1 a=cint(grid1.textmatrix(fil,col)) b=cint(grid2.textmatrix(fil,col)) grid3.textmatrix(fil, col) = cstr(a+b) Next col Next fil End Sub
  7. Al avanzar en la matriz resultante necesito:  Una variable NUEVA ( K) que avance en la primer matriz por columnas y la misa variable avanza en la segunda matriz en filas
  8. No olvide aumentar el codigo suficente para que se armen las 3 matrices. No olvide que al hacer click en cada celda de las matrices Grid 1 y Grid2 Grid3 debe quedar bloqueada para que el usuario no pueda modificar sus valores Private Sub Command1_Click() Call Producto End Sub