chiffre et php

Répondre
universdupc
le 21/03/2006 à 16:24
universdupc
Salut, voilà j'aimerais calculer la puissance de 2 sur un range de 200 donc par exemple
2
4
8
16
32
.
.
Mais le probleme c'est que lorsque l'on arrive à un trop grand chiffre il me mais plus la valeur correcte.

<?php
function puissance($nombre,$puissance)
{
$result=$nombre;
$puis=round($puissance-2);
for($i=0;$i<=$puis;$i++)
{
$result*=$nombre;
}
return $result;
}
echo puissance(2,48);
?>


voici le résultat : 2.8147497671066E+014

moi je voudrais le résultat osus la forme : 281474976710656

et ainsi de suite savez-vous si cela est possible, quelles sont les limites de php au point de vu calcul.
mojorisin
le 22/03/2006 à 13:34
mojorisin
Salut,
il te faut regarder du coté des fonctions bcMath
Attention ce module n'est pas forcément présent sur toutes les configurations serveur.

Le manuel :
http://fr2.php.net/manual/fr/ref.bc.php
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
LupusMic
le 22/03/2006 à 14:17
LupusMic
(universdupc)
et ainsi de suite savez-vous si cela est possible, quelles sont les limites de php au point de vu calcul.


En informatique, comme dans la vie, il y a une limite. Cette limite est dépendante de la norme du langage, de son implémentation et des limites de l'ordinateur sur lequel est compilé le programme.

Classiquement, pour les entiers non-signés tu peux manipuler des nombres entre 0 et 2^32 - 1. Car un entier est codé sur 32 bits sur un processeur 32 bits.

Comme mojorisin te le conseillait, regarde du côté de la bibliothèque bcmath. Si tu veux, il y a un exemple de calculatrice l'utilisant sur mon site. Cette bibliothèque utilise des algorithmes permettant de contourner les limitation du processeur et/ou du langage.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Bzh
le 22/03/2006 à 18:20
Bzh
Mais demande, dans ce cas, beaucoup plus de ressource au serveur...
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours