Good to Know Database

C: Signum-Funktion


Mit einer Signum-Funktion, auch Vorzeichenfunktion genannt, kann das Vorzeichen einer Zahl ermittelt werden. Das folgende Beispiel zeigt Signum-Funktionen für die Datentypen int, long, float und double.

int signum(int value)
{
  return (value>0)?1:((value<0)?-1:0);
}

int signum(long value)
{
  return (value>0)?1:((value<0)?-1:0);
}

int signum(float value)
{
  return (value>0)?1:((value<0)?-1:0);
}

int signum(double value)
{
  return (value>0)?1:((value<0)?-1:0);
}

Die Signum-Funktion liefert bei den folgenden Werten die entsprechenden Rückgabewerte.

value > 0   ==>  1
value < 0   ==> -1
value == 0  ==>  0

Wie Sie sehen, wird in jeder Signum-Funktion der folgende Code eingesetzt.

(value>0)?1:((value<0)?-1:0)

Eine ausführlichere Schreibweise dieser Zeile zeigt das folgende Listing. Ich denke damit dürfte schnell verständlich werden was diese Codezeile bewirkt.

if (value>0)
{
  return 1;
}
else
{
  if (value<0)
  {
    return -1;
  }
  else
  {
    return 0;
  }
}


Dieser Eintrag wurde am 20.11.2016 erstellt.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_38_2852.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer