function xv=triinfscript(L,b)


% Definisce la matrice L ed il vettore termine noto b;
%  calcolino nuovamente la dimensione della matrice;
%  verifichino che la matrice sia effettivamente triangolare inferiore;     
%  utilizzino la function triinf per determinare la soluzione;
%  visualizzino la matrice L, il vettore b, la dimensione del sistema ed il vettore
% soluzione.

% Calcolo la dimensione della matrice.
n=size(L,1);

% Verifica sia triangolare superiore.
% Bisogna controllare che a(i,j) = 0 per i > j.
% flag=0 se la matrice e' triangolare superiore, 1 altrimenti.
flag=test_triinf(L,n);

% Soluzione del sistema se la matrice e' triangolare inferiore.
if flag == 0
    fprintf('\n \t Matrice L non singolare');
    xv = triinf(L, b);
else
    fprintf('\n \t Matrice L singolare');
    xv=zeros(n,1);
end

L
b
xv



function flag=test_triinf(L,n)
% Verifica sia triangolare inferiore.
% Bisogna controllare che a(i,j) = 0 per i < j.
flag=0;
for i=1:n
    for j=i+1:n
        if abs(L(i,j)) > 0
            flag=1;
            return;
        end
    end
end
    