% Numerik WS 19/20, U Jena, Programmierblatt 3


% Beispieldaten;
f_beispiel1=@(x) 1./x;
a=.1;
b=3;
integral_exakt=log(b)-log(a);
f=f_beispiel1;



% Quadraturformeln
trapez_approx = (b-a)/2* (f(a)+f(b));
simpson_approx = (b-a)/6 * (f(a)+4*f((a+b)/2)+f(b));

% Fehlerberechnung
fehler_trapez=abs(trapez_approx-integral_exakt)/abs(integral_exakt);
fehler_simpson=abs(simpson_approx-integral_exakt)/abs(integral_exakt);

% Ausgabe
disp(strcat('Exakter Wert: ',num2str(integral_exakt)));
disp(strcat('Approx. Trapez: ',num2str(trapez_approx),...
     ', Rel.Fehler: ', num2str(100*fehler_trapez),' Prozent'));
disp(strcat('Approx. Simpson: ',num2str(simpson_approx),...
     ', Rel.Fehler: ', num2str(100*fehler_simpson),' Prozent'));
