A=[1 2 3; 4 5 6; 7 8 9]; %votre matrice
[m,n]=size(A);
bon=0;
sigma = perms(1:n) ;  %une liste de permutations des nombres de 1 à n
for ip = 1:size(sigma,1) %pour toute permutation
    P = zeros(n,n); %commencer avec une matrice nulle     
    for jdx = 1:m %pour chaque ligne
        %mettre le 1 de la ligne jdx à la colonne choisit par la
        %permutation P:
        P(jdx,sigma(ip,jdx)) = 1;  
    end;
    %faites ce que vous voulez avec P:
    B=PA;
    %etc; faites "bon = bon+1;" pour compter un bon resultat
end;

