Forum: PC-Programmierung Library für step()Funktion


von Toly (Gast)


Lesenswert?

Hallo!

ich würde gern Step()Funktion in ein c++Programm unter Linux  verwenden.
kennt jemand eine Library,in der diese Funktion definier ist.
Danke schön mal im Voraus

Gruß
Toly

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Was soll das für eine Funktion sein? Was soll die machen?

von Toly (Gast)


Lesenswert?

mathematische Funktion,die so definiert:
step(x)=0 für x<0 und step(x)=1 für x=>0.

von Peter II (Gast)


Lesenswert?

Toly schrieb:
> step(x)=0 für x<0 und step(x)=1 für x=>0.

dann schreib doch eine Step funktion


int step(int x ) {
   return x<0 ? 0 : 1;
}

von Klaus W. (mfgkw)


Lesenswert?

Peter II schrieb:
> Toly schrieb:
>> step(x)=0 für x<0 und step(x)=1 für x=>0.
>
> dann schreib doch eine Step funktion
>
>
> int step(int x ) {
>    return x<0 ? 0 : 1;

     return x>=0;

> }

von Jasch (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> Peter II schrieb:
>> Toly schrieb:
>>> step(x)=0 für x<0 und step(x)=1 für x=>0.
>>
>> dann schreib doch eine Step funktion
>>
>>
>> int step(int x ) {
>>    return x<0 ? 0 : 1;
>
>      return x>=0;
>
>> }

Der TS schrieb C++, das ist doch eher ein C-ismus?

Geht wohl trotzdem wegen der impliziten Umwandlung bool -> int mit 
(zufällig ;-) passendem Mapping der Werte.

Halte ich für schlechten Stil, die Variante mit ternärem Op war besser.

von Klaus W. (mfgkw)


Lesenswert?

naja, Stil ist auch Geschmackssache.
Die Klammerung würde mich eher stören :-)

von Klaus W. (mfgkw)


Lesenswert?

Apropos C++:
Wenn schon, dann würde ich eher eine template-Funktion schreiben,
etwa so:
1
template< typename T > inline int step( T x )
2
{
3
  return x>=0; // oder wie auch immer
4
}

Dann kann man auch mal eine long reinwerfen, und bekommt eine sinnvolle 
Warnung, wenn man es mit einer unsigned probiert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.