function [q, r]=qrnaiv(a)
% Naives Householderverfahren zur QR-Zerlegung
% fuer nicht notwendig quadratische Matrizen a
[n m]=size(a);
qs=eye(n); % wir wollen auch q=Q' berechnen
mn=min(n,m); % das gibt die Schrittzahl des Verfahrens an 
for k=1:mn    % Zerlegungsschleife
    u=zeros(n,1);
    u(k:end,1)=householder(a(k:end,k)) ;
    % wir rechnen das ziemlich primitiv vor...
    a=a-2*u*(u'*a);
    qs=qs-2*u*(u'*qs);
end
r=a;
q=qs';
