Section courante

A propos

Section administrative du site

Bien qu'en Liberty BASIC, il existe une fonction «Sqr» permettant de calculer la racine carré, il peut quand même être amusant d'effectuer se genre de calcul nous même. Pour remédier à se problème, il suffit de créer une fonction ressemblant à ceci :

  1. R = 2.0
  2. WHILE R <= 1000.0
  3.    PRINT "Sqrt("; R; ")="; SquareRoot(R)
  4.    R = R * R
  5. WEND
  6.  
  7. FUNCTION SquareRoot(X)
  8.     IF X = 0.0 THEN
  9.       SquareRoot = 0.0
  10.       EXIT FUNCTION
  11.     END IF
  12.     M = 1.0
  13.     XN = X
  14.     WHILE XN >= 2.0
  15.       XN = 0.25 * XN
  16.       M = 2.0 * M
  17.     WEND
  18.     WHILE XN < 0.5
  19.       XN = 4.0 * XN
  20.       M = 0.5 * M
  21.     WEND
  22.     A = XN
  23.     B= 1.0 - XN
  24.     DO
  25.        A = A * (1.0 + 0.5 * B)
  26.        B = 0.25 * (3.0 + B) * B * B
  27.     LOOP UNTIL B < 0.000000000000001
  28.     SquareRoot = A * M
  29. END FUNCTION

on obtiendra le résultat suivant :

Sqrt(2)= 1.41421
Sqrt(4)= 2.0000
Sqrt(16)= 4.0000
Sqrt(256)= 16.0000


Dernière mise à jour : Samedi, le 23 août 2014