function [x] = vorw_subst() 

% vorw_subst f"uhrt die Vorw"artssubstitution eines Dreieckssystems
% mit unterer Dreiecksmatrix  L durch. Die rechte Seite ist b und das
% Ergebnis wird auf dem Vektor x gespeichert
% Der Aufruf ist [x] = vorw_subst()

% speziell f"ur Aufgabe 3.3 werden die Daten gesetzt

L = [17,0,0,0,0,0; 2,2,0,0,0,0; -3,-4,7,0,0,0; 1,2,7,-13,0,0;
     0,8,-6,5,3,0;2,-2,-10,4,5,9]

b = [1,2,3,4,5,-6]'

% kontrolliere, ob alle Dimensionen passen
[n,m] = size(L);
if n ~= m
  error('L ist keine quadratische Matrix')
end
if n ~= size(b)
  error('Die Dimension von L und b passen nicht')
end

disp('L = ')
disp(L)

disp('b = ')
disp(b)

% erste Zeile
x(1) = b(1)/L(1,1);

% die anderen Zeilen
for i=2:n
  summe = b(i);
  for j=1:i-1
    summe = summe - L(i,j)*x(j);
  end
  x(i) = summe/L(i,i);
end

disp('x = ')
disp(x)







