Ejercicio 2.7.4 – Producto de matrices
% Ejercicio Mat 2.7.4
disp ('Sean las siguientes tres matrices:')
A = [2,4,-5;4,7,1;-3,-7,3];
B = [4,3,8;8,-3,9;2,5,-1];
C = [2,-4,1;-6,8,-3;4,-9,5];
disp('a) ¿Qué condiciones se deben cumplir para realizar el producto entre dos matrices?')
disp('Para poder multiplicar dos matrices, el número de columnas de la primera debe ser igual al número de filas de la segunda.')
disp('b) Obtenga AB.')
[m,n1] = size(A); % obtiene la dimensión de la matriz A.
[n2,p] = size(B); % obtiene la dimensión de la matriz B
if (n1 ~= n2) % determinan compatibilidad de dimensiones de las matrices.
disp('La multiplicación A*B no puede realizarse: dimensiones inadecuadas.')
else
C1 = A*B; % resultado de la multiplicación AB estándar en Matlab.
for i = 1:m % número de renglones
for j = 1:p % número de columnas de B
C2(i,j) = A(i,:) * B(:,j); % regla de multiplicación de matrices (2.6).
end
end
end
C2 % resultado de la multiplicación AB por el método iterativo.
disp('c) ¿Es posible realizar los siguientes productos AC y BC?')
disp('Producto AC')
[m,n1] = size(A);
[n2,p] = size(C);
if (n1 ~= n2)
disp('La multiplicación A*C no puede realizarse: dimensiones inadecuadas.')
else
C4 = A*C;
for i = 1:m
for j = 1:p
C3(i,j) = A(i,:) * C(:,j);
end
end
end
disp('Producto BC')
[m,n1] = size(B);
[n2,p] = size(C);
if (n1 ~= n2)
disp('La multiplicación B*C no puede realizarse: dimensiones inadecuadas.')
else
C5 = B*C;
for i = 1:m
for j = 1:p
C6(i,j) = B(i,:) * C(:,j);
end
end
end