next up previous
Next: About this document ... Up: Teorema degli zeri Previous: Teorema degli zeri

Calcolo della soluzione

Per il calcolo della soluzione possiamo ovviamente fare solo un numero finito di passi, ma questo numero puó essere scelto in dipendenza dell'approssimazione voluta. Infatti ogni punto di In dista da x0meno della lunghezza dell'intervallo stesso, quindi se vogliamo calcolare la soluzione con un'approssimazione $\varepsilon>0,$ basterá fermarsi dopo aver determinato un intervallo di lunghezza minore di $\epsilon .$Poiché la lunghezza dell'intervallo In é (b-a)/2n,basterá fissare n in maniera tale che $(b-a)/2^n<\varepsilon,$cioé

\begin{displaymath}n>\log_2\frac{b-a}{\varepsilon}\end{displaymath}

e scegliere come soluzione bn (approssimazione per eccesso) oppure an (approssimazione per difetto). Se scegliamo come soluzione mn=(an+bn)/2, non sappiamo se sia per eccesso o per difetto, ma la sua distanza da ogni punto dell'intervallo é sicuramente minore di $\varepsilon/2$ e quindi mné un'approssimazione migliore delle precedenti.

Queste considerazioni suggeriscono il seguente schema per un programma di calcolo.
 
Schema per il calcolo di una soluzione approssimata x0 dell'equazione f(x)=0 nell'intervallo [a,b] in cui f è continua e $f(a)>0,\ f(b)<0.$
 
Nel programma dovremo immettere dei dati, che verifichino le ipotesi del teorema,
Input:

\begin{displaymath}\begin{array}{ll} f&\quad\text{funzione}\\ a&\quad\text{primo...
...o}\\ \varepsilon&\quad\text{approssimazione voluta}
\end{array}\end{displaymath}

per ottenere un risultato,
Output:

\begin{displaymath}\begin{array}{ll}
x_0&\quad\text{ soluzione
approssimata}
\end{array}\end{displaymath}

Si noti che non e' noto se la soluzione trovata e' per difetto o per eccesso. Lo studente determini uno schema per calcolare con approssimazione per difetto (eccesso) $\epsilon$ la soluzione.
 
Lo schema è essenzialmente basato sulla procedura di iterazione descritta precedentemente e può essere così descritto
Inizio

\begin{displaymath}\begin{array}{lllll} \text{ Se} & b-a<2\,\varepsilon
&\text{p...
...:=(a+b)/2 &\text{ e \textcolor{red}{ Stampa
$x_0$}}
\end{array}\end{displaymath}

Altrimenti

\begin{displaymath}\begin{array}{llll} \text{se} &f((a+b)/2)=0
&\text{poni} &x_0...
...a+b)/2\quad \text{e vai a \textcolor{red}{ Inizio}}
\end{array}\end{displaymath}

Il programma si fermerà necessariamente dopo un numero finito di passi, quando la metà della lunghezza dell'intervallo risulterà minore dell'errore prescelto.
next up previous
Next: About this document ... Up: Teorema degli zeri Previous: Teorema degli zeri

1999-10-12