
function divdiff= metodo (f, x)
%METODO: calcolo differenze divise
%
% divdiff = metodo (f, x)
%
% Dati di ingresso:
%   f:      funzione (inline function)
%   x:     vettore delle ascisse
%
% Dati di uscita:
%   divdiff: vettore delle differenze divise di f in x


% Mi baso su quanto descritto a pag 272 del testo.

c(1)=feval(f,x(1));
n=length(x);

for ii=2:n
    d=x(ii)-x(ii-1);
    u=c(ii-1);
    for jj=ii-2:-1:1
        u=u*(x(ii)-x(jj))+c(jj);
        d=d*(x(ii)-x(jj));
    end
    c(ii)=(feval(f,x(ii))-u)/d;
    
    fprintf('\n \t %1.15e',c(ii));
end
        
divdiff=c;