prova B
Ricerca degli zeri di una funzione
Consideriamo il problema generale della ricerca
della soluzione di un'equazione non lineare del tipo g(x)=h(x).
Questa è sempre riconducibile alla forma
f(x)=0.
Se la funzione f non presenta singolarità
nell'intervallo [a,b] possiamo affermare che questo contiene almeno uno
zero della funzione se f(a) e f(b) hanno segno opposto.
Dato un intervallo in cui la funzione abbia un solo
zero possiamo usare il metodo di bisezione per localizzarlo. Il metodo
consiste nella ricerca binaria della soluzione attraverso un algoritmo
iterativo.
Siano ai e bi gli estremi dell'intervallo nel quale
si cerca lo zero all'i-esimo passo dell'iterazione, si definisce ci = (ai+bi)/2
e si valuta il prodotto f(ci)f(ai)=pi. Si possono avere tre casi:
1. pi == 0 la soluzione cercata è ci
2. pi > 0 la soluzione è tra ci e bi, si
pone ai+1 = ci e bi+1 = bi
3. pi < 0 la soluzione è tra ci e ai,
si pone ai+1 = ai e bi+1 = ci
Si ripete il tutto fin tanto che p non si annulla
o si sia raggiunta la precisione richiesta: |a-b|<epsilon
Scrivere un programma per la ricerca degli zeri
di una funzione di vostra scelta.