Thema: IF-Anweisung

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.186 Beiträge
 
Delphi 12 Athens
 
#11

AW: IF-Anweisung

  Alt 25. Nov 2011, 18:05
Zitat:
    raise Exception.CreateFmt( 'Wert %f ungültig. (0° <= Wert < 360°)', [ Value ] );
Stattdessen könnte man auch einfach den Wertebereich anpassen, denn als Kreisfunktion (unendlich wiederholend) gibt es auch Winkel kleiner 0° und größer/gleich 360°.

Für eine "genaue" Prüfung muß man also eigentlich nur die Werte in den gewünschen Bereich (0 <= w < 360) verschieben.

Delphi-Quellcode:
w := w mod 360;
if w < 0 then Inc(w, 360);

// oder
w := (w mod 360 + 360) mod 360;

// oder
w := w mod 360 + (Max(-Sign(w), 0) * 360);

// oder
w := w mod 360 - Sign(Min(w, 0)) * 360;

// oder
...
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (25. Nov 2011 um 18:08 Uhr)
  Mit Zitat antworten Zitat