Section courante

A propos

Section administrative du site

En LotusScript, il n'existe pas toujours une fonction «Sqrt» permettant de calculer la racine carré. Pour remédier à se problème, il suffit de créer une fonction ressemblant à ceci :

  1. Function SquareRoot(X As Double) As Double
  2.      Dim A,B,M,XN As Double
  3.      If X=0.0Then
  4.           SquareRoot =0.0
  5.      Else
  6.           M=1.0
  7.           XN=X
  8.           Do While XN>=2.0
  9.                XN=0.25*XN
  10.                M=2.0*M
  11.           Loop
  12.           Do While XN<0.5
  13.                XN=4.0*XN
  14.                M=0.5*M
  15.           Loop
  16.           A=XN
  17.           B=1.0-XN
  18.           Do
  19.                A=A*(1.0+0.5*B)
  20.                B=0.25*(3.0+B)*B*B
  21.           Loop Until B<1.0E-15
  22.           SquareRoot=A*M
  23.      End If
  24. End Function
  25.  
  26. Sub Main()
  27.      Dim R As Double
  28.      R=2
  29.      Do While R<=1000
  30.           Print "Sqrt(" & Str$(R) & ")=" & Str$(Sqr(R)) & " " & Str$(SquareRoot(R))
  31.           R=R*R
  32.      Loop 
  33. End Sub

on obtiendra le résultat suivant :

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

Voir également

Science - Mathématique

Dernière mise à jour : Dimanche, le 18 janvier 2015