Thema: Array Zugriff

Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#6

AW: Array Zugriff

  Alt 27. Nov 2011, 22:20
Ersetz mal dieses

Delphi-Quellcode:
     // Quadrantnummer aus Grenzwinkeln bestimmen
     If ((winkel*10)>=0) and ((winkel*10)<=900) then
     Begin
           quadrant:= 1;
     end;
     If ((winkel*10)>900) and ((winkel*10)<=1800) then
     Begin
           quadrant:= 2;
     end;
     If ((winkel*10)>1800) and ((winkel*10)<=2700) then
     Begin
           quadrant:= 3;
     end;
     If ((winkel*10)>2700) and ((winkel*10)<=3600) then
     Begin
           quadrant:= 4;
     end;

// Funktionsberechnung

     Case quadrant of
     1: begin
          coswert:=cos_Tab[i];

        end;
     2: begin
          coswert:=-cos_Tab[1800-i];

        end;
     3: begin
          coswert:=-cos_Tab[1800+i];

        end;
     4: begin
          coswert:=cos_Tab[3600-i];

        end;
     end;
durch dieses

Delphi-Quellcode:
     
     I := winkel*10;
     // an dieser Stelle gilt: 0 <= winkel <= 360,
     // also auch: 0 <= I <= 3600
     if (I <= 900) then
       coswert := cos_Tab[I] // 0..90
     else If (I <= 1800) then
       coswert := -cos_Tab[1800 - I] // 90..180
     else If (I <= 2700) then
       coswert := -cos_Tab[I - 1800] // 180..270
     else
       coswert := cos_Tab[3600 - I]; // 270..360
Durch die Verwendung von ELSE ersparst du dir die Abfrage der unteren Grenzen. Da du vorher schon den Bereich 0..360 kontrollierst, kann diese Überprüfung ebenfalls entfallen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat