function [q,r]  =  MyQRFactorisation(A)
      
n  =  size(A,1);
q  =  zeros(n);
q(:,1)  =  A(:,1)/norm(A(:,1));

for i=2:n
    %--------------------------------
    % Inicializamos matriz B de tamaño (n-1)x(n-1)
    % y vector f de tamaño (n-1)x1
    %--------------------------------
    B  =  zeros(i-1);
    f  =  zeros(i-1,1);
    %--------------------------------
    % Creamos matriz B y vector f
    %--------------------------------
    for k=1:i-1
        for j=1:i-1
            B(j,k)  =  q(:,j)'*q(:,k);         
        end
        f(k)  =  -A(:,i)'*q(:,k);
    end
    %--------------------------------
    % Resolvemos alpha    
    %--------------------------------
    alpha     =  B\f;
    %--------------------------------
    % Obtenemos fila i de matriz q
    %--------------------------------
    q(:,i)    =  A(:,i);
    for j=1:i-1
        q(:,i)  =  q(:,i) + alpha(j)*q(:,j); 
    end
    q(:,i)      =  q(:,i)/norm(q(:,i));    
end
%--------------------------------
% Obtenemos matriz r
%--------------------------------
r    =  q'*A;