Gladir.com - JavaScript - Sqrt (Racine carré)


Bien qu'en ColdFusion, 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:
<CFSCRIPT>
function SquareRoot(X) {
  var A = 0;
  var B = 0;
  var M = 0;
  var XN = 0; 
  if(X EQ 0.0) {
     return 0.0; 
  } else {
     M=1.0; 
     XN=X; 
     while(XN GTE 2.0) {
        XN=0.25*XN; 
        M=2.0*M; 
     }
     while(XN LT 0.5) {
        XN=4.0*XN; 
        M=0.5*M; 
     }
     A=XN; 
     B=1.0-XN; 
     do { 
        A=A*(1.0+0.5*B); 
        B=0.25*(3.0+B)*B*B; 
     } while(B GTE 1.0E-15); 
     return A*M; 
  }
} 

R=2.0;    
while(R LTE 1000.0) {
    WriteOutput("Sqrt(" & R & ")=" & SquareRoot(R) & "<BR>"); 
    R=R*R;       
}
</CFSCRIPT>

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: Mardi, le 7 février 2006