function [Q,R] = qrgs(A)
[m,n] = size(A);
R = zeros(n,n);
Q = zeros(m,n);

% completando columnas de Q
for i = 1:n
    Q(:,i) = A(:,i);
    for k = 1:i-1
        coef = A(:,i)'*Q(:,k);
        Q(:,i) = Q(:,i) - coef*Q(:,k);
    end
    Q(:,i) = Q(:,i)/norm(Q(:,i));
    % completando fila i de R
    for j = i:n
        R(i,j) = Q(:,i)'*A(:,j);
    end
end
