La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Calcolo della radice quadrata Con metodo della bisezione Rodolfo Pietrasanta matr. 223299.

Presentazioni simili


Presentazione sul tema: "Calcolo della radice quadrata Con metodo della bisezione Rodolfo Pietrasanta matr. 223299."— Transcript della presentazione:

1 Calcolo della radice quadrata Con metodo della bisezione Rodolfo Pietrasanta matr. 223299

2 Il concetto matematico Calcolare la radice quadrata di un numero reale positivo n significa trovare l’insieme delle x tali che x 2 = n. Per numeri > 1, la bisezione consiste nel porsi due estremi all’interno dei quali la radice sarà sicuramente compresa (Es. : 1 < sqrt(n) < n ) e calcolarne il punto medio. Se il punto medio appartiene all’insieme citato sopra (quindi se elevandolo a quadrato fa n), allora è la radice. Altrimenti, uno dei nuovi estremi sarà il punto medio stesso, mentre il secondo rimarrà o il più grande, se il punto medio al quadrato è più piccolo di n, o il più piccolo, se il punto medio al quadrato è più grande di n, per poi ripetere il processo.

3 Per numeri compresi tra 0 e 1 il procedimento è analogo, tuttavia andranno considerati come estremi iniziali 0 e 1 invece che 1 ed n. Se n = 1 la radice è uguale ad uno, mentre se n = 0, la radice è 0. L’algoritmo trova le radici solo nel campo reale, bisogna escludere i casi n < 0.

4 Passo Significativo Il passo significativo è quindi quello di ridurre l’intervallo all’interno del quale sono certo che ci sia la radice fino a trovare un’approssimazione sufficientemente precisa. In molti casi ci saranno molte o addirittura infinite cifre decimali, per questo occorrerà fornire una tolleranza all’algoritmo.

5 Passo Significativo: formalizzazione Calcolo medio = (estremo1 + estremo2) /2 Casi possibili: medio * medio = numeroho finito, trovata radice medio * medio < numeroestremo1  medio medio * medio > numeroestremo2  medio Si devere ripetere il passo significativo finché non ho finito

6 Problema: L’uguaglianza medio 2 = numero potrebbe non raggiungersi mai. a = b significa a – b = 0 Ci si accontenta di |a – b| <  dove  è legato alla precisione della rappresentazione floating point (ad esempio, 0.000001).

7 leggi numero se numero < 0 stampa “errore: numero deve essere non negativo” altrimenti se numero < 1 estremo1 = 0 estremo2 = 1 altrimenti estremo1 = 1 estremo2 = numero

8 stop = FALSE finchè (NOT stop) medio = (estremo1 + estremo2) / 2 se(|numero – medio*medio| < tolleranza ) stop = TRUE; altrimenti se(medio * medio < numero), allora estremo1 = medio altrimenti estremo2 = medio stampa "radice di numero = “, medio

9 Nota finale: numero = 0 e numero = 1 sono trattati come tutti gli altri numeri (radice con la stessa precisione). Se si intende trattarli come numeri “speciali”, si possono inserire dei test (if) prima del ciclo.


Scaricare ppt "Calcolo della radice quadrata Con metodo della bisezione Rodolfo Pietrasanta matr. 223299."

Presentazioni simili


Annunci Google