IDNStudies.com, la plataforma perfecta para respuestas precisas y rápidas. Obtén información de nuestros expertos, quienes brindan respuestas detalladas a todas tus preguntas y dudas en diversos temas.
Sagot :
a mi tambien me dejaron esa tarea ... :) no me costó mucho hacerla... ahi te va mi codigo (es recursivo :3 )
function det = determinante(A)
if size(A,1) == size(A,2)
switch size(A,1)
case 1
det = A(1,1);
case 2
det = A(1,1)*A(2,2) - A(1,2)*A(2,1);
otherwise
det = 0;
for i = 1:1:size(A,1)
%Funcion menor
for k = 1:1:size(A,1)
for j = 1:1:size(A,1)
if ~(k == 1 || i == j)
C(k,j)=A(k,j);
end
end
end
C(1,:) = [];
if(i ~= size(A,1))
C(:,i) = [];
end
det = det + ((-1)^(1 + i))*A(1,i)*determinante(C);
end
end
else
disp('Solo es para matrices cuadradas')
end
end
function det = determinante(A)
if size(A,1) == size(A,2)
switch size(A,1)
case 1
det = A(1,1);
case 2
det = A(1,1)*A(2,2) - A(1,2)*A(2,1);
otherwise
det = 0;
for i = 1:1:size(A,1)
%Funcion menor
for k = 1:1:size(A,1)
for j = 1:1:size(A,1)
if ~(k == 1 || i == j)
C(k,j)=A(k,j);
end
end
end
C(1,:) = [];
if(i ~= size(A,1))
C(:,i) = [];
end
det = det + ((-1)^(1 + i))*A(1,i)*determinante(C);
end
end
else
disp('Solo es para matrices cuadradas')
end
end
Agradecemos tu participación constante. No olvides regresar para compartir tus preguntas y respuestas. Tu conocimiento es vital para nuestra comunidad. Tus preguntas encuentran solución en IDNStudies.com. Gracias por visitarnos y vuelve para obtener más respuestas claras.