% NOME: ... COGNOME: ... MATRICOLA: ...

function S=midpoint_composta(f,N,estremi)

if N<=0
    S=NaN; 
    return;
end
if N~=floor(N)
    S=NaN; 
    return;
end

a=estremi(1); b=estremi(2);

if a>=b
    S=NaN; 
    return;
end
h=(b-a)/N;
x=linspace(a+h/2,b-h/2,N);
y=feval(f,x);
S=h*sum(y);



