function ev = qrEigenvalues(A,nIter,tol)
% ---------------------------------------------------
% Berechnet Eigenwerte einer Matrix, falls alle 
% Eigenwerte reell sind, ueber den QR-Algorithmus.
%
% Input
%   A      - Matrix, deren Eigenwerte zu bestimmen sind
%   nIter  - Anzahl der Iterationsschritte
%   tol    - Toleranz, mit der ein Matrixelement als 
%            Nullelement akzeptiert wird 
%
% Output
%   ev     - berechnete Eigenwerte
% ----------------------------------------------------

[m,n] = size(A);
if m ~= n
    error('Matrix nicht quadratisch');
end

if m ==1
    ev = A;
    return;
end
        
% QR-Iteration durchfuehren 
for i = 1:nIter
    ...%!!
    ...%!!
end

% Ergebnis in Rueckgabevariable schreiben
ev = ... %!!

% Pruefen, ob nahezu Dreiecksmatrix erzeugt
for j=1:n
    for i=j+1:n
        if ... %!! Eintrag A(i,j) ueberpruefen
            warning('fehlgeschlagen');
            ev=[];
            return;            
        end
    end
end

        
