function trojmat
% vstupem musi byt regularni trojuhelnikova matice a patricne dlouhy vektor
A = load('trojmatice.txt');  % matice
y = load('trojrhs.txt');     % prava strana

n = size(A,2);  % velikost matice

x = zeros(n,1);   % prazdny vektor pro reseni

for k = n : -1 : 1  % hledam reseni od konce (kde je v matici jen jeden nenulovy prvek na konci radku)
    soucet = 0;         
    for j = k+1 : n % do matice dosadim jiz nalezene prvky x
        soucet = soucet + A(k,j)*x(j);
    end
    % odectu od prislusneho radku prave strany a vydelim prvkem v matici
    x(k) = ( y(k) - soucet ) / A(k,k);  
end

x               % nase reseni
linsolve(A,y)   % jak to spocital Matlab

end
