Perl n'a pas de fonction intégrée spécifiquement conçue pour arrondir des nombres à virgule flottante en nombres entiers , mais vous pouvez écrire votre propre fonction qui intègre la fonction sprintf pour arrondir ces chiffres à l' entier le plus proche . La fonction sprintf prend deux arguments , un format et une liste. La liste est tout simplement le numéro que vous voulez arrondir vers le haut ou vers le bas . Utilisez "% .0 f " comme format , qui indique à la fonction que le nombre est à virgule flottante et que vous voulez arrondir à zéro chiffres après la virgule . Instructions
1
ouvrir un fichier de programme Perl. Tapez le code suivant :
sous intCheck
{
my $ num = shift;
retour
($ num = ~ m /^ \\ d + $ /) ;
}
Cela crée une fonction appelée " intCheck " qui obtient d'abord un argument qui lui est passé et l'enregistre dans une variable appelée " $ num ", puis retourne "true" si ce nombre est un nombre entier . ou "false" si elle n'est pas
2
Tapez le code suivant :
sous-round
{
my $ var = shift;
< p > Si ( intCheck ( $ var - 0,5 )) { $ var = $ var + 0,1 ; }
retour sprintf ( "% .0 f ", $ var) ; }
Cela crée une fonction appelée "rond ". Il devient l'argument qui lui est passé et l'enregistre dans la variable " $ var" . Il appelle ensuite la fonction de intCheck et passe le nombre variable moins 0,5 . Si la fonction de intCheck retourne "true", le $ var a 0,1 ajouté. La fonction round tours puis la variable au nombre entier le plus proche et le renvoie
3
Tapez le code suivant : .
Impression ronde ( 4.49) . "\\ n" ;
impression ronde ( 4.51) . "\\ n" ;
impression ronde ( 4.5). "\\ n" ;
Ces lignes de tester la fonction round . Les premiers tours de la ligne vers le bas à quatre et les deux lignes suivantes complètent à cinq.
4
Enregistrez le fichier Perl.