Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
965 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  [perl] limiter le nombre de chiffre d'un float ?

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[perl] limiter le nombre de chiffre d'un float ?

n°366275
darkpotpot
:3 muuuuuuuuuuuuuUUUUUUU
Posté le 18-04-2003 à 12:19:37  profilanswer
 

Voila, j'aurai besoin de savoir comment faire pour transformer un float de 50 chiffres apres la virgule en un float de 2 chiffres apres la virgule.
Merci

mood
Publicité
Posté le 18-04-2003 à 12:19:37  profilanswer
 

n°366283
Aricoh
gentil mais fo po pousser
Posté le 18-04-2003 à 12:29:39  profilanswer
 

darkpotpot a écrit :

Voila, j'aurai besoin de savoir comment faire pour transformer un float de 50 chiffres apres la virgule en un float de 2 chiffres apres la virgule.
Merci

Code :
  1. my $Nombre = 5.22232325656566;
  2. $Nombre = sprintf("%0.2f", $Nombre);


Message édité par Aricoh le 18-04-2003 à 12:30:05
n°366284
darkpotpot
:3 muuuuuuuuuuuuuUUUUUUU
Posté le 18-04-2003 à 12:31:13  profilanswer
 

Merci beaucoup, ca faisait un bon bout de temps que je cherchai

n°366285
Aricoh
gentil mais fo po pousser
Posté le 18-04-2003 à 12:31:51  profilanswer
 

darkpotpot a écrit :

Merci beaucoup, ca faisait un bon bout de temps que je cherchai

perlfunc est ton ami :D

n°366287
Aricoh
gentil mais fo po pousser
Posté le 18-04-2003 à 12:33:32  profilanswer
 

oups, petite précision en passant : sprintf ne gère pas l'arrondi après la virgule
 
ainsi, 5.299999999999 deviendra 5.29 et non 5.30
 
tout dépend de ce que tu voulais avoir à l'arrivée

n°367479
pospos
Posté le 20-04-2003 à 12:17:10  profilanswer
 

autre solution, parfois plus rapide (mais pas toujours): utiliser int:
 
2 chiffres apres la virgule:
$n = int(100*$n)/100
 
et si tu veut que ca arrondisse au superieur:
$n = int(100*$n + 0.5)/100
 
apres tu peux mettre ca dans une fonction:

Code :
  1. sub arrondi(
  2.     my $n = shift;
  3.     my $precision = shift;
  4.     return int((10**$precision)*$n + 0.5) / (10**$precision);
  5. }
  6. arrondi(0.123456789, 2); # -> 0.12


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  [perl] limiter le nombre de chiffre d'un float ?

 

Sujets relatifs
perl - protéger un programme contre les plantages ?[ Perl] cmd sort
PB de path en perl[PERL] Couleurs à l'affichage
[php ou perl] petite bd dans 1 fichierchemin vers perl automatique pour fichier exécutable
Installer un module CPAN à active perl sous win 2000Perl et Access
Arrêt du script Perllimiter les accès au PC en lançant une application
Plus de sujets relatifs à : [perl] limiter le nombre de chiffre d'un float ?


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR