
function c = polnewton (x,y)
% POLNEWTON Calcola i coefficienti del polinomio interpolatore
% utilizzando la forma di Newton 
%
% Uso:
% c = polnewton (x,y)
%
% Dati di ingresso:
% x vettore dei nodi
% y vettore dei valori della funzione da interpolare nei nodi
%
% Dati di uscita:
% c vettore colonna dei coefficienti ordinati per indici
% crescenti (c_0, c_1, ... )


% c(0) = f(x(0))
% for i = 1, ... , n
% d = x(i) - x(i-1)
% u = c(i-1)
% for j = i - 2, ... , 0 step -1
% u = u * (x(i) - x(j)) + c(j)
% d = d * (x(i) - x(j))
% end for j
% c(i) = (f(x(i)) - u)/d
% end for i

n=length(x)-1;

c(1)=y(1);
for i=1:n
    d=x(i+1)-x(i);
    u=c(i);
    for j=i+1-2:-1:1
        u=u*(x(i+1)-x(j))+c(j);
        d=d*(x(i+1)-x(j));
    end
    c(i+1)=(y(i+1)-u)/d;
end
