Bien qu'en QuickBASIC, 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 :
- DECLARE FUNCTION SquareRoot! (X!)
- R = 2!
- WHILE R <= 1000!
- PRINT "Sqrt("; R; ")="; SquareRoot(R)
- R = R * R
- WEND
-
- FUNCTION SquareRoot (X)
- IF X = 0! THEN
- SquareRoot = 0!
- EXIT FUNCTION
- END IF
- M = 1!
- XN = X
- WHILE XN >= 2!
- XN = .25 * XN
- M = 2! * M
- WEND
- WHILE XN < .5
- XN = 4! * XN
- M = .5 * M
- WEND
- A = XN
- B = 1! - XN
- DO
- A = A * (1! + .5 * B)
- B = .25 * (3! + B) * B * B
- LOOP UNTIL B < .000000000000001#
- SquareRoot = A * M
- END FUNCTION
on obtiendra le résultat suivant :
Sqrt(2)= 1.41421Sqrt(4)= 2.0000
Sqrt(16)= 4.0000
Sqrt(256)= 16.0000
Dernière mise à jour : Mercredi, le 14 septembre 2016