Hi ha diversos algorismes per calcular l'arrel quadrada d'un nombre real positiu; un d'ells, és el conegut com algorisme babilònic. L'algorisme babilònic és especialment interessant perquè es fonamenta en una noció geomètrica senzilla: la longitud del costat d'un quadrat és igual a l'arrel quadrada del valor de l'àrea del quadrat. [ Observació: en aquest article parlarem tan sols del valor positiu de l'arrel quadrada ].
Per exemple, és clar que l'arrel quadrada d'un nombre quadrat, com ara 4 (valor de l'àrea), és igual a 2 (valor de lna longitud del costat), perquè 2·2=4 ('àrea d'un quadrat es calcula multiplicant la longitud del costat per si mateixa).
Si el radicand r no és un nombre quadrat, llavors caldrà imaginar un rectangle l'àrea, de costats a i b, l'àrea del qual sigui igual a r, és a dir, a·b=r. Evidentment, hi ha vàries possibilitats per escollir a i b, això és evident, però no és rellevant com s'escull a i b. Fet això, cal redefinir les dimensions d'aquest rectangle per tal que, conservant l'àrea, s'apropi a un quadrat , de tal manera que les la diferència entre les longituds dels dos costats desiguals sigui més petita; això ho farem de la manera següent:
a \leftarrow \dfrac{a+b}{2}
i
b \leftarrow \dfrac{r}{a}
Continuarem aquest procés fins que la diferència entre els valors de a i de b sigui tan petit com vulguem, d'acord amb la precisió amb què desitgem fer el càlcul de l'arrel quadrada. Llavors, complirà
\sqrt{r}\approx a
Exemple:
Considerem el radical \sqrt{13}. Com que 13 no és un nombre quadrat, cal anar fent el que hem exposat:
--------------------------------------------------------
Iteració número 1: a =4 \quad \text{i} \quad b=13/4=3,25
--------------------------------------------------------
Iteració número 2: a=\dfrac{4+3,25}{2}=3,625 \quad \text{i} \quad b=\dfrac{13}{3,625}\approx 3,5862
--------------------------------------------------------
Iteració número 3: a=\dfrac{4+3,25}{2}=3,625 \quad \text{i} \quad b=\dfrac{13}{3,625}\approx 3,5862
--------------------------------------------------------
Iteració número 4: a=\dfrac{3,625+3,5862}{2}=3,6056 \quad \text{i} \quad b=\dfrac{13}{3,6056}\approx 3,6055
--------------------------------------------------------
Iteració número 5: a=\dfrac{3,6056+3,6055}{2}\approx 3,6056 \quad \text{i} \quad b=\dfrac{13}{3,6056}\approx 3,6056
(...)
Resultat:
Com podem veure a dalt, les longituds dels dos costats s'igualen a partir de la cinquena iteració, coincidint amb tres xifres decimals exactes pel cap baix; és a dir,
\sqrt{13}\approx 3,6056
Si desitgem més precisió, caldrà fer els càlculs prenent més xifres significatives; fent, és clar, més interacions.
\square
Aquest algorisme es pot implementar fent ús d'un ordinador o bé d'una calculadora programable, escrivint un programa. Hi ha molts llenguatges de programació adequats (C, Java, el llenguatge que incorpora MAXIMA, etcètera; per això, a continuació, donarem un esbós del programa, escrivint-lo en una mena de pseudocodi:
// Càlcul de \sqrt{r}
COMENÇA
// entrada de dades
radicand:=r // entrada del valor del radicand (volem calcular l'arrel quadrada d'aquest nombre)
a:=a_0; // entrada de la longitud d'un dels costats del rectangle (a_0 < r)
b:=r/a; // longitud d'un dels costats del rectangle
precisió:=p; // valor més petit de la diferència (en valor absolut) entre a i b
// càlcul iteratiu
FES MENTRE abs(a-b)>precisió
a:=(a+b)/2;
b:=r/a;
FI DE FES
// sortida
ESCRIU "arrel de r=",a
ACABA
\square