PDA

Visualizza la versione completa : [c] radice quadrata... comportamenti anomali


matteo martis
02-09-2011, 19:29
Salve!

ho creato una funzione per il calcolo della radice quadrata, ma ha dei comportamenti anomali perchč in vari casi non mi restituisce il risultato esatto ma 0.0000009.

La funzione usa la ricerca binaria per calcolare le singole cifre del risultato.

In primo luogo trovo la potenza di dieci che mi da la pił grande delle potenze di dieci minori
del numero dato in ingresso(numseek)... il risultato serve a posizionare correttamente le singole cifre, infatti ogni volta che trovo una cifra divido la potenza per 10.

Dopo aver trovato o aver diviso il numero applico la ricerca binaria per trovare la cifra giusta; quando trovo avg ogni volta la moltiplico per numseek e il risultato lo elevo al quadrato; in base al valore del quadrato assegno avg o al minimo al massimo.

Grazie!!!

i link del codice sono i seguenti:

- main del codice (http://www.matteomartis.altervista.org/binsquare.pdf)
- codice funzione (http://www.matteomartis.altervista.org/square.pdf)
- file h (http://www.matteomartis.altervista.org/squareh.pdf)

Loading