Thema: IF-Anweisung

Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: IF-Anweisung

  Alt 25. Nov 2011, 17:15
so
Delphi-Quellcode:
var
  lCosWinkel : Double;

  lCosWinkel := cos( winkel * 10 );

  If ( lCosWinkel > 0 ) and ( lCosWinkel < 900 ) then
     Begin
           quadrant:= 1;
           vorzeichen:= 1;
     end;
     If ( lCosWinkel > 900 ) and ( lCosWinkel < 1800 ) then
     Begin
           quadrant:= 2;
           vorzeichen:= -1;
     end;
     If ( lCosWinkel > 1800 ) and ( lCosWinkel < 2700 ) then
     Begin
           quadrant:= 3;
           vorzeichen:= -1;
     end;
     If ( lCosWinkel > 2700 ) and ( lCosWinkel < 3600 ) then
     Begin
           quadrant:= 4;
           vorzeichen:= 1;
     end;
Was soll eigentlich passieren, wenn lCosWinkel die Werte 0/3600, 900, 1800, 2700 hat?
Mit deiner Routine sind die dann im Nirwana, oder schlimmstenfalls haben die noch den alten Wert von quadrant, Vorzeichen
Zitat:
Code:
1.Quadrant: Winkel*10 von 0 bis 900
2.Quadrant: Winkel*10 von 901 bis 1800
3.Quadrant: Winkel*10 von 1801 bis 2700
4.Quadrant: Winkel*10 von 2701 bis 3600
So hast du das nicht umgesetzt und falsch ist es auch noch.
Bei einem Kreis ist 0°=360° und nach deiner Vorgabe würde das im Quadrant 1 und 4 liegen.

Und so ein Winkel im Bereich 900 < Winkel < 901 ???
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (25. Nov 2011 um 17:19 Uhr)
  Mit Zitat antworten Zitat