Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Vectores Programacion, Diapositivas de Programación C

Algoritmo para el manejo de vectores en programación

Tipo: Diapositivas

2018/2019

Subido el 25/06/2019

javier-quinonez-vernaza
javier-quinonez-vernaza 🇪🇨

1 documento

1 / 26

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Tema 2
Vectores y matrices
Guillermo Peris Ripoles
Objetivos
Cuando finalice este tema, el alumno deber´a ser capaz de:
Definir vectores y matrices con Octave.
Comprender y utilizar la notaci´on de dos puntos para la creaci´on de listas.
Controlar el acceso y modificaci´on de elementos y conjuntos de elementos de
vectores y matrices.
Realizar operaciones escalares con matrices.
Conocer los distintos tipos de matrices predefinidas por Octave.
Aplicaci´on
Cuando finalice este tema, el alumno deber´a ser capaz de resolver problemas como el
siguiente, cuya resoluci´on se indica a lo largo del propio tema.
Cin´etica de reacciones consecutivas
Algunas reacciones transcurren mediante la formaci´on de un intermediario, como
en las reacciones consecutivas de primer orden ABC. Las ecuaciones que
rigen estas reacciones, y que proporcionan la concentraci´on de cada especie en
funci´on del tiempo t, son las siguientes:
[A] = [A]0ek1t
[B] = k1[A]0ek1tek2t
k2k1
[C] = [A]01 + k1ek2tk2ek1t
k2k1
donde [A],[B]y[C]son las concentraciones de las respectivas especies, [A]0
la concentraci´on inicial de Ayk1yk2las constantes de velocidad. Escribe un
programa que pida al usuario los valores de [A]0,k1yk2, y calcule las concentra-
ciones de las tres especies en funci´on del tiempo. Comprueba el funcionamiento
del programa cuando [A]0=1 mol/l, k1=0.1 s1yk2=0.2 s1.
Ingenier´ıa Qu´ımica Programaci´on en Octave
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Vista previa parcial del texto

¡Descarga Vectores Programacion y más Diapositivas en PDF de Programación C solo en Docsity!

Tema 2

Vectores y matrices

Guillermo Peris Ripoll´es

Objetivos

Cuando finalice este tema, el alumno deber´a ser capaz de:

Definir vectores y matrices con Octave.

Comprender y utilizar la notaci´on de dos puntos para la creaci´on de listas.

Controlar el acceso y modificaci´on de elementos y conjuntos de elementos de vectores y matrices.

Realizar operaciones escalares con matrices.

Conocer los distintos tipos de matrices predefinidas por Octave.

Aplicaci´on

Cuando finalice este tema, el alumno deber´a ser capaz de resolver problemas como el siguiente, cuya resoluci´on se indica a lo largo del propio tema.

Cin´etica de reacciones consecutivas

Algunas reacciones transcurren mediante la formaci´on de un intermediario, como en las reacciones consecutivas de primer orden A → B → C. Las ecuaciones que rigen estas reacciones, y que proporcionan la concentraci´on de cada especie en funci´on del tiempo t, son las siguientes:

[A] = [A] 0 e−k^1 t

[B] = k 1 [A] 0

{ e−k^1 t^ − e−k^2 t k 2 − k 1

}

[C] = [A] 0

{ 1 +

( k 1 e−k^2 t^ − k 2 e−k^1 t k 2 − k 1

)}

donde [A], [B] y [C] son las concentraciones de las respectivas especies, [A] 0 la concentraci´on inicial de A y k 1 y k 2 las constantes de velocidad. Escribe un programa que pida al usuario los valores de [A] 0 , k 1 y k 2 , y calcule las concentra- ciones de las tres especies en funci´on del tiempo. Comprueba el funcionamiento del programa cuando [A] 0 =1 mol/l, k 1 =0.1 s−^1 y k 2 =0.2 s−^1.

Ingenier´ıa Qu´ımica Programaci´on en Octave

2-2 Vectores y matrices

  • 2.1. Introducci´on 2- Contenidos
  • 2.2. Vectores 2-
    • 2.2.1. Acceso y modificaci´on de elementos de vectores 2-
  • 2.3. Matrices 2-
  • 2.4. Matrices predefinidas 2-
  • 2.5. Operaciones con matrices 2-
    • 2.5.1. Transposici´on 2-
    • 2.5.2. Aritm´etica escalar 2-
    • 2.5.3. Aplicaci´on de funciones sobre matrices 2-
  • 2.6. Aritm´etica matriz-matriz 2-
    • 2.6.1. Suma y resta 2-
    • 2.6.2. Producto escalar 2-
    • 2.6.3. Multiplicaci´on 2-
    • 2.6.4. Determinantes 2-
    • 2.6.5. Matriz inversa 2-
  • 2.7. Aplicaci´on 2-
  • 2.8. Ejercicios pr´acticos 2-

2-4 Vectores y matrices

Octave tambi´en tiene definida la funci´on linspace(inicial,final,elementos) que permite crear un n´umero determinado de valores (elementos) distribuidos homo- g´eneamente entre dos l´ımites (inicial y final). Dicho de otra forma, en lugar de especificar el intervalo entre elementos (como se hac´ıa con la notaci´on de dos puntos) se indica el n´umero de elementos que queremos. Por ejemplo,

 s = linspace(0,10,6) s = 0 2 4 6 8 10

crea un vector de 6 elementos equiespaciados entre 0 y 10. Tambi´en en este caso se podr´ıa crear un vector de valores decrecientes cambiando el orden de los valores inicial y final:

 s = linspace(10,0,6) s = 10 8 6 4 2 0

Ejercicios

b I 1 ¿Qu´e vectores crean las siguientes instrucciones? Pi´ensalo antes de obtener el resultado con Octave.

a) [1:9] b) [-1:9] c) [1:2:9] d) [1:0.5:9]

e) [1:3:9] f) [9:-2:1] g) [9:-3:1] h) [9:-3:-1]

b I 2 Utiliza la funci´on linspace para crear los vectores del ejercicio anterior.

2.2.1. Acceso y modificaci´on de elementos de vectores

En ocasiones, nos interesa acceder a elementos determinados de un vector previamente definido, o bien modificar dichos elementos. Para ello, Octave permite el uso de ´ındices (expresados entre par´entesis), de forma que t(1) ser´ıa el primer elemento de t, t(2) el segundo, etc. Veamos un ejemplo:

 t = [6 1 -1 12 4.4 -2.36 2 0.87 48 9 0] ;  t(1) ans = 6  t(6) ans = -2.

Tambi´en puede utilizarse la notaci´on de dos puntos para acceder a un conjunto de elementos, en cuyo caso el resultado es un nuevo vector.

Universitat Jaume I Guillermo Peris Ripoll´es

2.2. Vectores 2-

 r = t(1:3) r = 6 1 -  s = t(10:-1:7) s = 9 48 0.87 2

En el ejemplo anterior, el vector r incluye los elementos de las posiciones 1-2-3 de t, y el vector s los elementos de las posiciones 10-9-8-7, en ese orden. De hecho, es posible acceder a elementos cualesquiera y en cualquier orden del vector mediante el uso de una lista de elementos. Por ejemplo, en las siguientes l´ıneas se crea un nuevo vector u eligiendo los elementos de las posiciones 3, 8, 1 y 6 de t, en este orden:

 u = t([3 8 1 6]) u = -1 0.87 6 -2.

Mediante esta selecci´on de elementos de un vector, tambi´en podemos modificar vectores ya creados, mediante ´ordenes de asignaci´on. A continuaci´on se muestra un ejemplo a partir del vector t:

 t(1) = 2 t = 2 1 -1 12 4.4 -2.36 2 0.87 48 9 0  t(4:6) = [5 4 3] t = 2 1 -1 5 4 3 2 0.87 48 9 0  t([11 7 10 8 9]) = [0 1 2 3 4] t = 2 1 -1 5 4 3 1 3 4 2 0

Fij´emonos en que en algunas de las instrucciones anteriores se realizan asignacio- nes m´ultiples. As´ı, en la segunda instrucci´on se asignan simult´aneamente 3 valores a 3 posiciones del vector t, mientras que en la tercera se realizan 5 asignaciones. Obvia- mente, si el n´umero de elementos a ambos lados del operador de asignaci´on es distinto, Octave no realizar´a ninguna asignaci´on, indic´andolo con un error.

 t(4:6) = [5 4 3 2] error: A(I) = X: X must be a scalar or a vector with the same length as I ...........

Ingenier´ıa Qu´ımica Programaci´on en Octave

2.3. Matrices 2-

 A = [1 2 3 4

9 10 11 12]

A =

La funci´on size aplicada sobre una matriz (o vector) devuelve un vector de dos componentes con sus dimensiones en filas y columnas:

 size(A) ans= 3 4

Podemos acceder a los elementos individuales de esta matriz indicando entre pa- r´entesis la fila y columna del elemento separadas por comas. As´ı,

 A(2,3)

ans = 7

De nuevo, la potente notaci´on de dos puntos de Octave puede utilizarse para crear submatrices a partir de una matriz original. Considera los siguientes ejemplos, en los que se utiliza la matriz A definida anteriormente:

 b = A(2:3,3) b = 7 11  c = A(3,:) c = 9 10 11 12  d = A([2 3],[2 4]) d = 6 8 10 12

En la primera expresi´on, se crea un nuevo vector columna b tomando de las filas 2 y 3 los elementos de la tercera columna. En la segunda orden, utilizamos el operador ’:’ sin n´umeros que lo delimiten para indicar que nos interesan todos los elementos de la fila 3 de A. Por ´ultimo, en la expresi´on final creamos una nueva matriz tomando los elementos de las posiciones 2 y 4 de las filas 2 y 3.

Al igual que se vi´o en el caso de vectores, tambi´en podemos modificar los elementos de una matriz con la instrucci´on de asignaci´on =, siempre que las dimensiones a ambos lados del signo igual sean las mismas:

Ingenier´ıa Qu´ımica Programaci´on en Octave

2-8 Vectores y matrices

 A([2 3],[2 4]) = [0 1; 2 3]

A =

Por ´ultimo, tambi´en podemos construir nuevas matrices yuxtaponiendo matrices ya existentes, siempre que ´estas tengan las dimensiones adecuadas. F´ıjate en los si- guientes ejemplos:

 X = [1 2 ; 3 4]

X =

 Y = [5 6 ; 7 8]

Y =

 Z = [3 4 5 6 ; 7 8 9 10]

Z =

 B = [X Y]

B =

 C = [X ; Y]

C =

 D = [X Z]

D =

 E = [X ; Z]

error: number of columns must match (4 != 2)

Ejercicios

I 5 Define con Octave las siguientes matrices y comprueba sus dimensiones con la funci´on size.

A =

[ 1 2 3 4 5 6 7 8 9 10 11 12

] B =

    

1 7 2 8 3 9 4 10 5 11 6 12

    

C =

   

  1. 6 1. 5 2. 3 − 0. 5
  2. 2 0. 5 − 0. 1 − 2. 0
  3. 7 8. 2 9. 0 1. 5
  4. 5 0. 5 2. 4 0. 5
  5. 2 − 2. 3 − 4. 5 0. 5

   

Universitat Jaume I Guillermo Peris Ripoll´es

2-10 Vectores y matrices

 A = ones(3,2) A = 1 1 1 1 1 1

Matriz identidad : La funci´on eye crea una matriz en la que todos los ele- mentos son ceros a excepci´on de los elementos diagonales (aquellos en que los ´ındices de filas y columnas son iguales) que son unos. A esta matriz se le conoce como matriz identidad y se denota matem´aticamente como I. Los argumentos de esta funci´on son similares a los de las funciones anteriormente definidas. Aun- que, formalmente, las matrices identidad son cuadradas, esta funci´on de Octave permite la creaci´on de matrices identidad rectangulares.

 A = eye(3) A = 1 0 0 0 1 0 0 0 1  B = eye(3,2) B = 1 0 0 1 0 0  C = [ 1 2 3 ; 4 2 5] C = 1 2 3 4 2 5  D = eye(size(C)) D = 1 0 0 0 1 0

Matriz diagonal: Se denomina as´ı a aquella matriz en la que todos los elemen- tos extradiagonales son ceros, es decir, ´unicamente presentan valores distintos de cero los elementos de la diagonal. Octave nos permite crear una matriz dia- gonal a partir de un vector, que situa en la diagonal de la matriz. Para ello utilizaremos la funci´on diag como sigue:

 X = [4 3 2 1];

 Y = diag(X) Y = 4 0 0 0 0 3 0 0 0 0 2 0 0 0 0 1

Por el contrario, si el argumento de la funci´on es una matriz, diag extrae el vector que contiene los elementos diagonales:

Universitat Jaume I Guillermo Peris Ripoll´es

2.5 Operaciones con matrices 2-

 A = [ 1 2 3; 4 5 6; 7 8 9]

A =

 diag(A) ans = 1 5 9

Matriz aleatoria: La funci´on rand(n) crea una matriz de dimensi´on n × n con elementos aleatorios distribuidos uniformemente entre 0 y 1, mientras que con dos argumentos (rand(m,n)) crea una matriz de dimensiones m × n.

 A = rand(4,5) A = 0.722684 0.678103 0.228702 0.648577 0. 0.336018 0.976399 0.458428 0.525437 0. 0.651192 0.483592 0.744526 0.952700 0. 0.464437 0.166825 0.163426 0.568459 0.

Ejercicios

I 7 Haciendo uso de las funciones vistas hasta ahora, define las siguientes matrices:

a)

  

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

  

b)

  

1 0 0 0 0 1 0 0 0 0 1 1 0 0 1 1

  

c)

  

7 0 0 0 0 9 0 0 0 0 11 0 0 0 0 13

  

d)

  

2 1 1 1 1 2 1 1 1 1 2 1 1 1 1 2

  

b I 8 Dada una matriz A cualquiera, ¿a qu´e es igual la operaci´on diag(diag(A))? Para comprobar tu respuesta, apl´ıcalo a una matriz A aleatoria de dimensiones 3 × 3 creada con la funci´on rand.

2.5. Operaciones con matrices

2.5.1. Transposici´on

La matriz transpuesta de una matriz A de dimensi´on m × n es una matriz de n × m en la que el elemento (i, j) ha pasado a la posici´on (j, i), o dicho coloquialmente, se han intercambiado las filas y columnas de A. Por ejemplo, la matriz transpuesta de

[

]

es

Ingenier´ıa Qu´ımica Programaci´on en Octave

2.5 Operaciones con matrices 2-

La matriz B se construye multiplicando por 2 cada uno de los elementos de A, mientras que C se define restando 2 a los elementos de B.

Pero, ¿qu´e ocurre si queremos multiplicar dos matrices de dimensiones semejantes elemento a elemento?. En ese caso no podemos utilizar el operador ’*’, ya que ´este realizar´ıa un producto matricial (explicado en una secci´on posterior), cuyo resultado ser´ıa distinto al esperado. En general, para realizar operaciones escalares con matrices utilizaremos los operadores antecedidos de un punto. Para entenderlo mejor, vamos a seguir una serie de ejemplos utilizando vectores:

 A = [2 5 6] ;

 B = [2 3 5] ;

 C= A.*B

C =

 D = A./B

D =

Las sumas y restas de matrices (siempre que sus dimensiones sean las mismas) se consideran en el algebra matricial como operaciones elemento a elemento (al con- trario que las multiplicaciones y divisiones) por lo que, aunque podemos utilizar los operadores .+ y .-, el punto no es necesario.

 A + B

ans = 4 8 11  A - B ans = 0 2 1

Tambi´en pueden realizarse exponenciaciones elemento a elemento, como se muestra en el siguiente ejemplo:

 C= A.∧ 2

C =

 D= 3.∧A

D =

 E = A.∧B

E =

As´ı pues, en general, s´olo ser´a necesario anteceder el operador con un punto en el caso de multiplicaciones, divisiones y exponenciaciones cuando se pretenda realizar una operaci´on elemento a elemento.

Ingenier´ıa Qu´ımica Programaci´on en Octave

2-14 Vectores y matrices

Estas operaciones, adem´as de ser v´alidas para vectores, tambi´en lo son para ma- trices, como se observa en los siguientes ejemplos:

 d = [1:5; -1:-1:-5] d = 1 2 3 4 5 -1 -2 -3 -4 -  p = d.* p = 5 10 15 20 25 -5 -10 -15 -20 -  q = d.∧ 3 q = 1 8 27 64 125 -1 -8 -27 -64 -

Ejercicios

I 9 Calcula los valores del vector C tras ejecutar las ´ordenes que se indican, utilizando los vectores A = [2 -1 5 0] y B = [3 2 -1 4]. Comprueba tus respuestas con Octave. a) C = B + A -3; b) C = A./B; c) C = A.∧B; d) C = 2A + A.∧B; e) C = 2.∧B + A; f) C = 2B/3.*A;

b I 10 Crea un vector x con los siguientes elementos: a) 1, 1 / 2 , 1 / 3 , 1 / 4 , 1 / 5 , 1 / 6 b) 0, 1 / 2 , 2 / 3 , 3 / 4 , 4 / 5

2.5.3. Aplicaci´on de funciones sobre matrices

Las funciones matem´aticas de Octave actuan sobre las matrices del mismo modo que las operaciones escalares, es decir, se aplican elemento a elemento. Veamos un ejemplo:

 x = pi*[0:0.1:0.9];  y = cos(x) y = Columns 1 through 5: 1.0000e+00 9.5106e-01 8.0902e-01 5.8779e-01 3.0902e- Columns 6 through 10: 6.1230e-17 -3.0902e-01 -5.8779e-01 -8.0902e-01 -9.5106e-

Universitat Jaume I Guillermo Peris Ripoll´es

2-16 Vectores y matrices

Utilicemos vectores y matrices concretos para entender mejor la acci´on de estas funciones.

 v = [3 4 1 9 5 6] v = 3 4 1 9 5 6  M = [0.6 1.5 2.3 -0.5 ; 8.2 0.5 -0.1 -2.0; 5.7 8.2 9.0 1.5 ; ... 0.5 0.5 2.4 0.5 ; 1.2 -2.3 -4.5 0.5] M = 0.6 1.5 2.3 -0. 8.2 0.5 -0.1 - 5.7 8.2 9 1. 0.5 0.5 2.4 0. 1.2 -2.3 -4.5 0.  max(v) ans = 9  max(M) ans = 8.2 8.2 9 1.

La funci´on max devuelve, al ser aplicada a un vector, el valor m´aximo del mismo, en este caso 9. Sin embargo, al tener como argumento una matriz devuelve un vector fila en el que cada elemento es el m´aximo de la columna correspondiente de la matriz original. La funci´on sum presenta un comportamiento similar con vectores y matrices, sumando las componentes de un vector y las componentes de cada columna en una matriz, como se muestra en el siguiente ejemplo:

 sum(v) ans = 28  sum(M) ans = 16.2 8.4 9.1 0

La funci´on length calcula la longitud del vector, o sea, el n´umero de elementos que contiene. En el caso de una matriz, devuelve el n´umero m´aximo de filas o columnas, es decir, la dimensi´on de la matriz de mayor valor.

 length(v) ans = 6

 length(M) ans = 5

La funci´on mean calcula la media de los elementos del vector, es decir, la suma de sus elementos dividida por el n´umero de ellos. Esto se aplica sobre las columnas al tener como argumento una matriz.

Universitat Jaume I Guillermo Peris Ripoll´es

2.5 Operaciones con matrices 2-

 mean(v) ans =

 mean(M) ans = 3.24 1.68 1.82 0

Por ´ultimo, la funci´on sort ordena los elementos de un vector, mientras que en el caso de matrices ordena de forma independiente cada una de sus columnas.

 sort(v) ans = 1 3 4 5 6 9  sort(M) ans = 0.5 -2.3 -4.5 - 0.6 0.5 -0.1 -0. 1.2 0.5 2.3 0. 5.7 1.5 2.4 0. 8.2 8.2 9 1.

Ejercicios

I 12 Determina las matrices devueltas por las siguientes llamadas a funci´on, verificando posteriormente tus respuestas con Octave. Deber´as definir previamente las siguientes variables:

w =

[ 0 3 − 2 7

] x =

[ 3 − 1 5 7

] y =

 

1 3 7 2 8 4 6 − 1 − 2

 

a) max(w) b) min(y) c) mean(y) d) median(w)

e) sort(2*w+x) f) sort(y) g) length(w) h) length(y)

I 13 En Octave, ¿es equivalente mean(x) y sum(x)/length(x)? Compru´ebalo con los si- guientes vector y matriz y trata de dar una explicaci´on a tus observaciones.

w =

[ 0 3 − 2 7

] y =

[ 1 3 7 2 8 4

]

b I 14 ¿C´omo calcular´ıas el valor m´aximo de entre todos los elementos de una matriz?

Ingenier´ıa Qu´ımica Programaci´on en Octave

2.6. Aritm´etica matriz-matriz 2-

antes del producto para convertirlo en un vector columna. Si no lo hubi´eramos hecho, habr´ıamos obtenido un mensaje de error^3 :

 A*B

??? Error using ==>* Inner matrix dimensions must agree.

El producto escalar de dos vectores es muy importante en algebra vectorial y en f´ısica. Ejercicios

b I 15 A partir de los siguientes vectores, indica cu´ales de las siguientes operaciones son correctas, calculando su valor. A =

[ 5 3 − 1

] B = ones(1, 3) C =

[ 9 4 0

]

D = eye(1, 4) E =

[ − 1 3 − 5 7

]

a) AB b) AB’ c) BA’ d) AC’

e) B*C’

f) B*D’

g) E*D’

2.6.3. Multiplicaci´on

La multiplicaci´on de matrices no es una operaci´on elemento a elemento, es decir, no se efect´ua multiplicando los elementos correspondientes de las matrices operando. Si realizamos la multiplicaci´on C = A × B, el elemento cij no se calcula como aij × bij , sino como el producto escalar de los vectores correspondientes a la fila i de la matriz A y la columna j de la matriz B. En la figura 2.1 se muestra gr´aficamente esta operaci´on (^4). Aqu´ı se observa que si queremos multiplicar dos matrices A (m × n) y B (p × q), el n´umero de columnas de A debe coincidir con el n´umero de filas de B, es decir, n = p.

ij c fila i m

n

p

q

columna j m

q

= x

C = A x B

Figura 2.1: Multiplicaci´on de matrices.

Una forma sencilla de decidir si podemos multiplicar dos matrices es escribir las tallas de las dos matrices juntas. De esta forma, si las dos dimensiones interiores coinci- den, las matrices se pueden multiplicar y la dimensi´on de la matriz resultante coincide (^3) Podr´ıamos haber obtenido el resultado correcto utilizando la siguiente expresi´on: sum(A.*B). (^4) ¡Cuidado!. De esta definici´on se infiere que el producto de matrices no es conmutativo, es decir, A × B 6 = B × A.

Ingenier´ıa Qu´ımica Programaci´on en Octave

2-20 Vectores y matrices

con las dimensiones externas. Por ejemplo, supongamos que queremos multiplicar una matriz de 2 × 3 por otra de 3 × 3 (en ese orden). ︷ ︸︸ ︷ 2 × (^3) ︸︷︷︸ , 3 × 3

Al ser los dos n´umeros internos iguales, la multiplicaci´on es v´alida, y las dimen- siones de la matriz resultante son los n´umeros externos, es decir, 2 × 3. Consideremos las matrices siguientes:

A =

[

]

B =

El producto de estas matrices se realizar´ıa como sigue:

C = A × B =

[

]

[

]

[

]

En Octave, esta operaci´on se realizar´ıa de forma sencilla con el operador de multipli- caci´on:

 A = [2 5 1; 0 3 -1];

 B = [1 0 2; -1 4 -2; 5 2 1] ;

 C = A*B

C =

 D = B*A

??? Error using ==>* Inner matrix dimensions must agree.

Fij´emonos en que Octave no permite el producto B × A por no ser adecuadas las dimensiones de las matrices. Recordemos que si A es una matriz, A.∧ 2 es la operaci´on que eleva al cuadrado cada elemento de la matriz. Si queremos calcular propiamente el cuadrado de la matriz, es decir, AA, podemos ejecutar la orden A∧ 2. De este modo, A∧ 4 es equivalente a AAAA. Si tenemos en cuenta que en el producto de matrices el n´umero de columnas del primer operando ha de ser igual al n´umero de filas del segundo, deducimos que unicamente podemos obtener potencias de matrices cuadradas.´

 B∧ 3

ans = 27 24 18 − 87 24 − 66 33 54 3

Universitat Jaume I Guillermo Peris Ripoll´es