
function demo_bisezione

% default
toll=10^(-6); maxit=1000; esempio=1;
% esempi.
switch esempio
    case 1 % funzione piatta
        f=inline('exp(x)-2+x'); 
        a=0; b=1; sol=0.4428544010023885;
    case 2 
        f=inline('sin(x)-x'); 
        a=-2; b=3; sol=0;
end
% bisezione
[aa,bb,wr,ko]=bisezione(f,a,b,toll,maxit);
% statistiche
fprintf('\n \t soluzione : %1.15e',aa(end));
fprintf('\n \t tolleranza: %1.15e',toll);
fprintf('\n \t numero it.: %4d',length(aa));

if ko == 0
    fprintf('\n \t La procedura e'' terminata correttamente');
else
    fprintf('\n \t La procedura non e'' terminata correttamente');
end
fprintf('\n \n');

% ---------------------- plot ----------------------
indici=(1:length(wr))';
% grafico risultati
clf; 
semilogy(indici,wr);
hold on;
title('Residuo pesato bisezione'); % titolo
xlabel('Indice'); % etichetta asse x
ylabel('Residuo pesato'); % etichetta asse y
% nome del file da salvare che vari con l'esempio,
% ottenuto concatenando 3 stringhe
% salva figura come pdf.
print('bisezione_esempio.pdf','-dpdf');
hold off;
% ---------- salvataggio risultati su file ----------
% creazione del file con facolta' di scrittura.
fid=fopen('bisezione_esempio.txt','w');
% dati immagazzinati nella matrice A (si immagazzinino come vettori riga,
% ma bisogna ricordare che "aa", "bb" sono colonna. 

A=[1:length(aa); aa; bb];
% scrittura dei dati su file.
fprintf(fid,'\n %3.0f  %1.15e %1.15e',A);
% chiusura file
fclose(fid);