cap1.3 tutor recursividad matriz

16
Ing. Mary Lopez 4. Recursion con Matrices Programacion II Iterar es Humano Recursividad es Divino Universidad Autónoma Gabriel Rene Moreno FICCT Semestre I/2017

Upload: mary-dunnia-lopez-n

Post on 15-Apr-2017

899 views

Category:

Education


4 download

TRANSCRIPT

Page 1: Cap1.3 tutor recursividad   matriz

Ing. Mary Lopez

4. Recursion con MatricesProgramacio

n II

Iterar es Humano Recursividad es Divino

Universidad Autónoma Gabriel Rene Moreno

FICCTSemestre I/2017

Page 2: Cap1.3 tutor recursividad   matriz

4. La matrizIntroduccion• Definici

on• Caract

eristicas

Tipos de Matriz• Cuadra• Triangular

Superior• Nula• Matriz Fila

Operaciones con Matrices• Suma• Producto

Ejercicios• GenMat1

Page 3: Cap1.3 tutor recursividad   matriz

Introducción “Su principal aplicación

práctica esta en la solución de sistemas de ecuaciones

lineales”

Page 4: Cap1.3 tutor recursividad   matriz

DefiniciónLlamaremos 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:

Page 5: Cap1.3 tutor recursividad   matriz

Características1. Un nombre2. 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. (A(2x3) => Tiene 6 elementos (2*3) )

Page 6: Cap1.3 tutor recursividad   matriz

Tipos de Matriz

“Típico andas por la calle y por ahí te encuentras con alguna matriz escalonada”

Page 7: Cap1.3 tutor recursividad   matriz

Tipo de Matriz Ejemplo1. 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  i => 1 <= i <= n ;  j =>  1 <= j <= m.4. A será llamada matriz cuadrada si: n=m.

5. Matriz diagonal si:   n = m => Igual Nro. Filas y Columnas

Aij =0 => Donde i <> j

Page 8: Cap1.3 tutor recursividad   matriz

Tipo de Matriz Ejemplo6. A será llamada matriz identidad si:

  n = m => Igual Nro. Filas y Columnas

Aij =0 => Donde i <> jAij =1 => Donde i = j

7. Matriz triangular superior si:   n = m => Igual Nro. Filas y Columnas

Aij =0 => Donde i > j

8. Mmatriz triangular inferior  si   n = m => Igual Nro. Filas y Columnas

Aij =0 => Donde i < j

9. Matriz simétrica   n = m => Igual Nro. Filas y Columnas

Aij = Aji

Page 9: Cap1.3 tutor recursividad   matriz

Operaciones con Matrices

“Hay operaciones matriciales en las que el orden de los

factores altera el resultado”

Page 10: Cap1.3 tutor recursividad   matriz

SUMA DE MATRICES

10 2050 3552 4

10 50

20 3510 36

+ =20 70

70 7062 40

1. Las matrices a sumar deben ser de igual dimensión2. Tan solo pensar en llenar la matriz resultante

Cij=Aij + Bij3. La suma de las matrices se vacía en una nueva matriz.4. La matriz resultante será de igual dimensión que las matrices sumadas

A B C

Page 11: Cap1.3 tutor recursividad   matriz

Ejercicios con Matrices

“Generar matrices es muy similar a generar series

numéricas.”

Page 12: Cap1.3 tutor recursividad   matriz

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 en la

matriz 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.

Page 13: Cap1.3 tutor recursividad   matriz

1. GENERAR LA SIGUIENTE MATRIZ

MA T1 (6 x 6)

MA T2 (7 x 7)

Page 14: Cap1.3 tutor recursividad   matriz

MATRIZ DE ANILLOSPaso 1: Análisis según la matriz Mat1

1.La matriz es cuadrada Mat1 (N x N)2. El primer anillo esta lleno con un valor constante ( 6)

val = N3. El segundo anillo esta lleno con otro valor constante ( 5 )

val = val - 14. Similar al segundo anillo se van formando el resto de los anillos hasta que: se llega al centro de la matriz.

Conviene entonces que se llena la matriz por anillo

¿ Como saber que la matriz ya esta llena?Marcar limites Superior = MaxInferior = Min

Page 15: Cap1.3 tutor recursividad   matriz

MATRIZ DE ANILLOSPaso 2: Diseño para la matriz Mat1

GenAnillos(Int ** , int N, int M, int pf, int pc,int &Max, int &Min)

Int **MatInt NInt MPf=0Pc=0Int MaxInt Min

Int **MatInt MaxInt Min

Page 16: Cap1.3 tutor recursividad   matriz

MATRIZ DE ANILLOSPaso 3: Inplementación

void GenMat1(int * *Mat,Grid,int posf,int posc,int &max,int &min) {

if ( posc>max) { posc=min; posf=posf+1;}if(posf>max){

max=max-1; min=min+1;posf=min; posc=min;

}

if(min<max+1){ if(posf==max || posf==min || posc==max || posc==min){ Mat[posf][posc] =max+1; }; if(posf==max || posf==min) posc=posc+1; else if(posc==min)posc=max; else posc=posc+1; GenMat1(Mat,posf,posc,max,min);}

}

Se paso en columnas: - Salta fila - Columna inicia en min

Se paso en filas:- Se mueve los Limite min y max - Toca el siguiente anillo, por lo que la columna y la fila inician en min

// Lo siguiente controla que los anillos termine de completarse