|
Bien qu'en PHP5, il existe une fonction «Sqrt» 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:
<?
function SquareRoot($X) {
if($X==0.0) {
return 0.0;
} else {
$M=1.0;
$XN=$X;
while($XN>=2.0) {
$XN=0.25*$XN;
$M=2.0*$M;
}
while($XN<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>=1.0E-15);
return $A*$M;
}
}
$R=2.0;
while($R<=1000.0) {
echo "Sqrt(".$R.")=".SquareRoot($R)."<BR>";
$R*=$R;
}
?>
|
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 |