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