Artikel im Internet unter http://www.hidemail.de/blog/sgn-funktion-fuer-perl.shtml.
Mittwoch, 17.12.2008, 13:29:29 Uhr

SGN-Funktion für Perl


Da ich ja auch öfters mal in Basic unterwegs bin, fiel mir heute auf, daß Perl gar keine sgn-Funktion hat. Wieso eigentlich?

Zur Erläuterung für all diejenigen, die sgn nicht kennen:
sgn gibt einen Wert zurück, der anzeigt, ob ein bestimmter Wert größer, kleiner oder gleich 0 ist.

Also
Für $wert > 0 gibt's eine 1
Für $wert = 0 gibt's eine 0
Für $wert < 0 gibt's eine -1

Nun könnte man das ja auch über eine if-Abfrage lösen, "perliger" ist's aber doch wie unten gelöst:

$a=10;
$b=0;
$c=-10;

print sgn($a);
print sgn($b);
print sgn($c);

sub sgn{
my $wert=shift;
return $wert <=> 0;
}


Die Funktion sgn nimmt den zu untersuchenden Wert entgegen und gibt den entsprechenden Rückgabewert zurück.




Artikel im Internet unter http://www.hidemail.de/blog/sgn-funktion-fuer-perl.shtml.