Fonction abs() en Perl

Dans le langage de programmation Perl, il ya une fonction intégrée abs(). Cette fonction renvoie le module de son argument.

Voici un exemple:

▶ Run
#!/usr/bin/perl

print abs( -3.14159265358979 );

Ce programme affiche 3.14159265358979.

Les arguments

my $abs_value = abs($value);

Si la fonction abs() envoyer un seul argument, la fonction sera de travailler avec lui.

Si vous ne transmettre aucun argument, la fonction va travailler avec дефолтной variable $_. Voici un exemple (le programme affiche le nombre de 8):

▶ Run
#!/usr/bin/perl

$_ = -8;

print abs();

Si la fonction abs() de transmettre plus d'un argument, ce serait une erreur:

Too many arguments for abs at script.pl line 3, near "2)"
Execution of script.pl aborted due to compilation errors.

Dans ce cas si la fonction transmise à la chaîne, elle est convertie en nombre. Plus d'infos sur ce que Perl convertit une chaîne en nombre.

Voici un exemple de code dans lequel la fonction abs() fonctionne avec les lignes:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;
use feature qw(say);

say abs('Hello');
say abs('-100asdf');
say abs(' -123JK');

Ce programme affiche:

0
100
123
Argument "Hello" isn't numeric in abs at script.pl line 7.
Argument "-100asdf" isn't numeric in abs at script.pl line 8.
Argument " -123JK" isn't numeric in abs at script.pl line 9.

Dans ce cas, si l'argument d'utiliser undef, alors la fonction retourne le nombre de 0, mais si dans le code de use warnings;, ce sera un avertissement Use of uninitialized value in abs at script.pl line 6..

La valeur de retour

La fonction de abs() toujours retourne un nombre négatif.

La documentation officielle

Voici la sortie de la commande perldoc -f abs:

    abs VALUE
    abs     Returns the absolute value of its argument. If VALUE is omitted,
            uses $_.

Thèmes connexes

Autres articles