SlideShare una empresa de Scribd logo
1 de 24
Matrices
Matriz
Un arreglo lo definimos como la relación entre un
nombre y un conjunto de localidades. Decimos
que la estructura de datos que definimos en el arreglo
es de una sola dimensión ya que utilizamos un solo
valor para identificar a cada localidad (0,1,2,...,n-1).
0 1 2 3 4 5 6 7
Una matriz también es una colección de localidades
asociadas a un nombre, sólo que los datos se organizan
en dos dimensiones. Por ello, para hacer referencia a
una localidad del arreglo se necesitan de dos números:
* El número de renglón
* El número de columna
0 1 2 3 4 5
0
1
2
3
Matriz
• De la misma manera que en los arreglos, la numeración de
renglones y de columnas inicia desde 0.
• Si por ejemplo definimos una matriz de 6 renglones y 6 columnas,
el primer elemento de la colección se encontraría en:
– renglón 0
– columna 0
• Y el último elemento se encontraría en:
– renglón 5
– columna 5
Matriz
Definición de una matriz
• La definición de variables de tipo matriz es similar a los arreglos,
la forma general de declarar una variable matriz es la siguiente:
tipo nombre [#renglones][#columnas];
• tipo es un tipo de datos (int, double, char).
• nombre es el nombre de la variable.
• #renglones es el número de renglones de la matriz.
• #columnas el número de columnas de la matriz.
Localidades de una matriz
• Una vez que hemos declarado la variable matriz, ¿Cómo
tenemos acceso a los valores? indicando el renglón y la
columna de dicha localidad.
• Para esto debemos recordar que los renglones están
numerados de 0 a r-1 (en donde r es el número de renglones
del arreglo) y que las columnas están numeradas de 0 a c-1
(en donde c es el número de columnas del arreglo).
• Para hacer referencia a una localidad específica del arreglo
debemos escribir el nombre de la variable y entre corchetes el
número de renglón y el número de columna de la localidad.
int M[8][6];
• Así por ejemplo, la manera como referenciamos a la primera
localidad del arreglo M que se definió anteriormente es M[0][0]
y la última localidad es M[7][5]
Localidades de una matriz
Asignaciones a una localidad
de la matriz
• La forma de asignar un valor a una localidad específica de la matriz
es la siguiente:
nombre[renglon][columna] = valor;
• en donde nombre es el nombre de la variable matriz, renglon es el
número del renglón de la localidad y columna el número de
columna de la localidad de la matriz y valor es cualquier valor del
tipo con que fue definida la matriz.
Realizar ejercicios con matrices para
comprender su funcionamiento.
Actividad Grupal
¿Cómo quedaría la matriz siguiente al ejecutar
las instrucciones descritas?
int M[4][4];
int x1=10;
int x2=20;
M[0][0] = X1;
M[1][0] = X2;
M[0][3] = M[0][0] * x2;
0 1 2 3
0
1
2
3
10
20
?
¿Cual sería el valor de X dada la siguiente
matriz?
0 1 2 3
0
1
2
3
10
10
20 20 20
10
20
20
40
30 20 10 20
40
30
20
int M[4][4];
X= M[0][0]+M[0][1]+ M[0][2]+M[0][3]
Escribe las instrucciones necesarias para poder
llenar la diagonal de una matriz con ceros, la
matriz es de dimensión 4 X 4
0 1 2 3
0
1
2
3
0
0
0
0
0
0
0
0
Actividad colaborativa
(3 minutos)
La estructura compañera de las matrices es dos ciclos for
anidados. Como te darás cuenta, la mayoría de los problemas
de matrices tendrán un código similar al siguiente:
for (int i=0; i<renglones; i++)
{
for (int j=0;j<columnas; j++)
{
}
}
Matriz
For anidados
• Esta estructura de doble ciclo nos permite recorrer todas las
localidades el arreglo, con el primer ciclo for se recorren los
renglones, y con el segundo ciclo se recorren las columnas.
• En el primer ciclo se recorre cada renglón, para ello la
variable del ciclo (i) toma los valores:
0, 1, 2, ... , renglones – 1
que son precisamente los números de cada renglón de la
matriz.
• En el segundo ciclo para el renglón i, se recorre cada columna
de la matriz, para ello la variable del ciclo ( j ) toma los valores:
0, 1, 2, ... , columnas-1
que son precisamente los números de cada columna de la
matriz.
For anidados
Escriba el código del procedimiento
iniciaMatriz, que recibe una matriz de enteros
de 3 renglones y 3 columnas y le asigna a cada
localidad el valor de 5.
Actividad Grupal
#define renglones 3
#define columnas 3
void iniciaMatriz (int M[renglones][columnas])
{
int i, j;
for (i=0; i<renglones; i++)
{
for (j=0; j<columnas; j++)
{
M[ i ][ j ] = 5;
}
}
}
Solución
Escriba el código del procedimiento
imprimeMatriz, que recibe una matriz de
enteros de 3 renglones y 3 columnas y
despliega en pantalla el contenido de la matriz.
Actividad Grupal
#define renglones 3
#define columnas 3
void imprimeMatriz (int M[renglones][columnas])
{
int i, j;
for (i=0; i<renglones; i++)
{
for (j=0; j<columnas; j++)
{
printf(“%i ”, M[ i ][ j ]);
}
printf(“n”);
}
}
Solución
Escriba el código del procedimiento iniciaMatriz2,
que recibe una matriz de enteros de 3 renglones y 3
columnas y le asigna a cada localidad un número
consecutivo correspondiente del 1 al 9
0 1 2
0
1
2
1
5
9
6
8
4
7
2 3
Actividad colaborativa
(3 minutos)
#define renglones 3
#define columnas 3
void iniciaMatriz2 (int M[renglones][columnas])
{
int aux=1;
for (int i=0; i<renglones; i++)
{
for (int j=0; j<columnas; j++)
{
M[ i ][ j ] = aux;
aux++;
}
}
}
Solución
 Escriba el código del procedimiento sumaMatrices, que recibe
las matrices A, B y C de enteros de 3 renglones y 3 columnas
cada una.
 El procedimiento asignará en la localidad correspondiente de la
matriz C la suma de las matrices A más B.










=










+










32
29
26
20
17
14
8
5
2
21
19
17
13
11
9
5
3
1
11
10
9
7
6
5
3
2
1
Actividad colaborativa
(10 minutos)
#define renglones 3
#define columnas 3
void sumaMatrices (int A[renglones][columnas],
int B[renglones][columnas],
int C[renglones][columnas])
{ int i, j;
for (i=0; i<renglones; i++)
{
for (j=0; j<columnas; j++)
{
C[ i ][ j ]= A[ i ][ j ] + B[ i ][ j ];
}
}
}
Solución
Integrar todos los procedimientos vistos
anteriormente en un solo programa para
verificar su funcionamiento
Actividad Grupal

Más contenido relacionado

Similar a 11_Matrices.pptx

Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)José Antonio Sandoval Acosta
 
Matlab -compu_aplicada
Matlab  -compu_aplicadaMatlab  -compu_aplicada
Matlab -compu_aplicadaHernaly
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesBrian Bastidas
 
Matrices y determinantes
Matrices y determinantesMatrices y determinantes
Matrices y determinantesWILDERESNEIDER
 
Matrices y determinantes
Matrices y determinantesMatrices y determinantes
Matrices y determinantesSebastianVertel
 
Informe algebra lineal determinantes e inversión
Informe algebra lineal determinantes e inversiónInforme algebra lineal determinantes e inversión
Informe algebra lineal determinantes e inversiónJafetSalomnValenciaO
 
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdfLuisAlbertoMolinaJim
 
Matrices_y_determinantes REGLA DE CRAMER.pptx
Matrices_y_determinantes  REGLA DE CRAMER.pptxMatrices_y_determinantes  REGLA DE CRAMER.pptx
Matrices_y_determinantes REGLA DE CRAMER.pptxBaquedanoMarbaro
 
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)José Antonio Sandoval Acosta
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matricesjmorenotito
 
6MATEMATICA_1ero_sec_Sistemas de numeracion.doc
6MATEMATICA_1ero_sec_Sistemas de numeracion.doc6MATEMATICA_1ero_sec_Sistemas de numeracion.doc
6MATEMATICA_1ero_sec_Sistemas de numeracion.docLuisAlbertoMolinaJim
 
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasJosé Antonio Sandoval Acosta
 
Arreglos bidimensionales o matrices
Arreglos bidimensionales o matricesArreglos bidimensionales o matrices
Arreglos bidimensionales o matricesAriannaYadiraT
 
Presentacion matrices jjmp.
Presentacion matrices jjmp.Presentacion matrices jjmp.
Presentacion matrices jjmp.beta2012
 

Similar a 11_Matrices.pptx (20)

Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
 
Matlab -compu_aplicada
Matlab  -compu_aplicadaMatlab  -compu_aplicada
Matlab -compu_aplicada
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuaciones
 
Matrices y determinantes
Matrices y determinantesMatrices y determinantes
Matrices y determinantes
 
Matrices y determinantes
Matrices y determinantesMatrices y determinantes
Matrices y determinantes
 
Matrices y determinantes
Matrices y determinantesMatrices y determinantes
Matrices y determinantes
 
Informe algebra lineal determinantes e inversión
Informe algebra lineal determinantes e inversiónInforme algebra lineal determinantes e inversión
Informe algebra lineal determinantes e inversión
 
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf
6MATEMATICA_1ero_sec_Sistemas de numeracion.pdf
 
Matrices_y_determinantes REGLA DE CRAMER.pptx
Matrices_y_determinantes  REGLA DE CRAMER.pptxMatrices_y_determinantes  REGLA DE CRAMER.pptx
Matrices_y_determinantes REGLA DE CRAMER.pptx
 
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
Presentacion Matrices
Presentacion MatricesPresentacion Matrices
Presentacion Matrices
 
6MATEMATICA_1ero_sec_Sistemas de numeracion.doc
6MATEMATICA_1ero_sec_Sistemas de numeracion.doc6MATEMATICA_1ero_sec_Sistemas de numeracion.doc
6MATEMATICA_1ero_sec_Sistemas de numeracion.doc
 
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructurasIng. Mecatronica Prog. Básica U4 Arreglos y estructuras
Ing. Mecatronica Prog. Básica U4 Arreglos y estructuras
 
Matrices
MatricesMatrices
Matrices
 
Algebra matrices
Algebra matricesAlgebra matrices
Algebra matrices
 
Arreglos bidimensionales o matrices
Arreglos bidimensionales o matricesArreglos bidimensionales o matrices
Arreglos bidimensionales o matrices
 
Sistemas numericos
Sistemas numericos Sistemas numericos
Sistemas numericos
 
Presentacion matrices jjmp.
Presentacion matrices jjmp.Presentacion matrices jjmp.
Presentacion matrices jjmp.
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 

Último

CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfIsbelRodrguez
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfrolandolazartep
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)ssuser6958b11
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxEtse9
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxLuisvila35
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptxJhordanGonzalo
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEANDECE
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfAdelaHerrera9
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesal21510263
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para PlataformasSegundo Silva Maguiña
 
Uso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendiosUso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendioseduardochavezg1
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Conservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaConservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaANDECE
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadANDECE
 

Último (20)

CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdf
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
Linealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdfLinealización de sistemas no lineales.pdf
Linealización de sistemas no lineales.pdf
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
produccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptxproduccion de cerdos. 2024 abril 20..pptx
produccion de cerdos. 2024 abril 20..pptx
 
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptxAMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
AMBIENTES SEDIMENTARIOS GEOLOGIA TIPOS .pptx
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSE
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
 
Cadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operacionesCadenas de Markov investigación de operaciones
Cadenas de Markov investigación de operaciones
 
Parámetros de Perforación y Voladura. para Plataformas
Parámetros de  Perforación y Voladura. para PlataformasParámetros de  Perforación y Voladura. para Plataformas
Parámetros de Perforación y Voladura. para Plataformas
 
Uso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendiosUso y Manejo de Extintores Lucha contra incendios
Uso y Manejo de Extintores Lucha contra incendios
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Conservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaConservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de Almería
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidad
 

11_Matrices.pptx

  • 2. Matriz Un arreglo lo definimos como la relación entre un nombre y un conjunto de localidades. Decimos que la estructura de datos que definimos en el arreglo es de una sola dimensión ya que utilizamos un solo valor para identificar a cada localidad (0,1,2,...,n-1). 0 1 2 3 4 5 6 7
  • 3. Una matriz también es una colección de localidades asociadas a un nombre, sólo que los datos se organizan en dos dimensiones. Por ello, para hacer referencia a una localidad del arreglo se necesitan de dos números: * El número de renglón * El número de columna 0 1 2 3 4 5 0 1 2 3 Matriz
  • 4. • De la misma manera que en los arreglos, la numeración de renglones y de columnas inicia desde 0. • Si por ejemplo definimos una matriz de 6 renglones y 6 columnas, el primer elemento de la colección se encontraría en: – renglón 0 – columna 0 • Y el último elemento se encontraría en: – renglón 5 – columna 5 Matriz
  • 5. Definición de una matriz • La definición de variables de tipo matriz es similar a los arreglos, la forma general de declarar una variable matriz es la siguiente: tipo nombre [#renglones][#columnas]; • tipo es un tipo de datos (int, double, char). • nombre es el nombre de la variable. • #renglones es el número de renglones de la matriz. • #columnas el número de columnas de la matriz.
  • 6. Localidades de una matriz • Una vez que hemos declarado la variable matriz, ¿Cómo tenemos acceso a los valores? indicando el renglón y la columna de dicha localidad. • Para esto debemos recordar que los renglones están numerados de 0 a r-1 (en donde r es el número de renglones del arreglo) y que las columnas están numeradas de 0 a c-1 (en donde c es el número de columnas del arreglo).
  • 7. • Para hacer referencia a una localidad específica del arreglo debemos escribir el nombre de la variable y entre corchetes el número de renglón y el número de columna de la localidad. int M[8][6]; • Así por ejemplo, la manera como referenciamos a la primera localidad del arreglo M que se definió anteriormente es M[0][0] y la última localidad es M[7][5] Localidades de una matriz
  • 8. Asignaciones a una localidad de la matriz • La forma de asignar un valor a una localidad específica de la matriz es la siguiente: nombre[renglon][columna] = valor; • en donde nombre es el nombre de la variable matriz, renglon es el número del renglón de la localidad y columna el número de columna de la localidad de la matriz y valor es cualquier valor del tipo con que fue definida la matriz.
  • 9. Realizar ejercicios con matrices para comprender su funcionamiento. Actividad Grupal
  • 10. ¿Cómo quedaría la matriz siguiente al ejecutar las instrucciones descritas? int M[4][4]; int x1=10; int x2=20; M[0][0] = X1; M[1][0] = X2; M[0][3] = M[0][0] * x2; 0 1 2 3 0 1 2 3 10 20 ?
  • 11. ¿Cual sería el valor de X dada la siguiente matriz? 0 1 2 3 0 1 2 3 10 10 20 20 20 10 20 20 40 30 20 10 20 40 30 20 int M[4][4]; X= M[0][0]+M[0][1]+ M[0][2]+M[0][3]
  • 12. Escribe las instrucciones necesarias para poder llenar la diagonal de una matriz con ceros, la matriz es de dimensión 4 X 4 0 1 2 3 0 1 2 3 0 0 0 0 0 0 0 0 Actividad colaborativa (3 minutos)
  • 13. La estructura compañera de las matrices es dos ciclos for anidados. Como te darás cuenta, la mayoría de los problemas de matrices tendrán un código similar al siguiente: for (int i=0; i<renglones; i++) { for (int j=0;j<columnas; j++) { } } Matriz
  • 14. For anidados • Esta estructura de doble ciclo nos permite recorrer todas las localidades el arreglo, con el primer ciclo for se recorren los renglones, y con el segundo ciclo se recorren las columnas. • En el primer ciclo se recorre cada renglón, para ello la variable del ciclo (i) toma los valores: 0, 1, 2, ... , renglones – 1 que son precisamente los números de cada renglón de la matriz.
  • 15. • En el segundo ciclo para el renglón i, se recorre cada columna de la matriz, para ello la variable del ciclo ( j ) toma los valores: 0, 1, 2, ... , columnas-1 que son precisamente los números de cada columna de la matriz. For anidados
  • 16. Escriba el código del procedimiento iniciaMatriz, que recibe una matriz de enteros de 3 renglones y 3 columnas y le asigna a cada localidad el valor de 5. Actividad Grupal
  • 17. #define renglones 3 #define columnas 3 void iniciaMatriz (int M[renglones][columnas]) { int i, j; for (i=0; i<renglones; i++) { for (j=0; j<columnas; j++) { M[ i ][ j ] = 5; } } } Solución
  • 18. Escriba el código del procedimiento imprimeMatriz, que recibe una matriz de enteros de 3 renglones y 3 columnas y despliega en pantalla el contenido de la matriz. Actividad Grupal
  • 19. #define renglones 3 #define columnas 3 void imprimeMatriz (int M[renglones][columnas]) { int i, j; for (i=0; i<renglones; i++) { for (j=0; j<columnas; j++) { printf(“%i ”, M[ i ][ j ]); } printf(“n”); } } Solución
  • 20. Escriba el código del procedimiento iniciaMatriz2, que recibe una matriz de enteros de 3 renglones y 3 columnas y le asigna a cada localidad un número consecutivo correspondiente del 1 al 9 0 1 2 0 1 2 1 5 9 6 8 4 7 2 3 Actividad colaborativa (3 minutos)
  • 21. #define renglones 3 #define columnas 3 void iniciaMatriz2 (int M[renglones][columnas]) { int aux=1; for (int i=0; i<renglones; i++) { for (int j=0; j<columnas; j++) { M[ i ][ j ] = aux; aux++; } } } Solución
  • 22.  Escriba el código del procedimiento sumaMatrices, que recibe las matrices A, B y C de enteros de 3 renglones y 3 columnas cada una.  El procedimiento asignará en la localidad correspondiente de la matriz C la suma de las matrices A más B.           =           +           32 29 26 20 17 14 8 5 2 21 19 17 13 11 9 5 3 1 11 10 9 7 6 5 3 2 1 Actividad colaborativa (10 minutos)
  • 23. #define renglones 3 #define columnas 3 void sumaMatrices (int A[renglones][columnas], int B[renglones][columnas], int C[renglones][columnas]) { int i, j; for (i=0; i<renglones; i++) { for (j=0; j<columnas; j++) { C[ i ][ j ]= A[ i ][ j ] + B[ i ][ j ]; } } } Solución
  • 24. Integrar todos los procedimientos vistos anteriormente en un solo programa para verificar su funcionamiento Actividad Grupal