% METODO DEL PUNTO MEDIO PER APPROSSIMARE L'INTEGRALE DELLA FUNZIONE
% DEFINITA IN effe1.m
%
close all
clear
a=input('Inserisci estremo sinistro dell''intervallo di integrazione: ') ;
b=input('Inserisci estremo destro dell''intervallo di integrazione: ') ;
N=input('Numero di intervalli: ') ;
h=(b-a)/N ;
disp(h)

% CALCOLO DEL VALORE DELLA f NEI PUNTI MEDI
x_PM=a+h/2:h:b;


f_PM=effe1(x_PM);

% CALCOLO DELL'INTEGRALE APPROSSIMATO CON PUNTO MEDIO COMPOSITO 
int_PM=h*sum(f_PM) ;
disp(['Valore approssimato dell''integrale: ' num2str(int_PM)])

% Con estremi di integrazione -1 e 4
if a==-1 && b==4
    int_esatto=25-(2/pi) ;
    errore=abs(int_esatto-int_PM) ;
else
    errore='***NON conosco il valore dell''integrale ESATTO***' ;
end

disp('Errore di approssimazione: ')
disp(errore)

bar(x_PM,f_PM,1,'c')
hold on

% GRAFICO DELLA FUNZIONE
x=a:0.02:b ;
fplot=effe1(x) ;
plot(x,fplot)
title('Somma delle aree dei rettangoli approssima valore dell''integrale')