Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   STEP in FOR-Schleifen bei Delpi? (https://www.delphipraxis.net/71852-step-schleifen-bei-delpi.html)

robinWie 21. Jun 2006 22:10


STEP in FOR-Schleifen bei Delpi?
 
Hallo,
bei Basic gibt es die möglichkeit in den FOR-Schleifen "STEP" einzubauen. Wenn man dann Schreibt:
Code:
for i1 := 0 to i2 step 2
wird nicht immer i1 + 1 gerechnet sonder i1 + 2. Anders ausgedrückt: Es wird in einer Zweierreihe gezählt.
Ist es möglich das auch bei Delphi einzubauden

mkinzler 21. Jun 2006 22:16

Re: STEP in FOR-Schleifen bei Delpi?
 
Delphi-Quellcode:
Nein nicht so direkt. Du müßtest mit 2 Variablen arbeiten:
for i1a := 0 to i2/2 do
begin
   i1 := i1a*2;
   ...
end;

Dust Signs 21. Jun 2006 22:25

Re: STEP in FOR-Schleifen bei Delpi?
 
Oder alternativ mit Zeigern (ungetestet):

Delphi-Quellcode:
var
  i: Integer;
  p: ^Integer;
{..}
  p := @i;
  {..}
  for i := 0 to 10 do begin
    {..}
    Inc(p^);
  end;
Dust Signs

xaromz 21. Jun 2006 22:38

Re: STEP in FOR-Schleifen bei Delpi?
 
Hallo,
Zitat:

Zitat von Dust Signs
Oder alternativ mit Zeigern (ungetestet)

Du solltest vielleicht dazuschreiben, dass das eine Sauerei ist und kein Delphi :stupid: .

Gruß
xaromz

JasonDX 21. Jun 2006 22:41

Re: STEP in FOR-Schleifen bei Delpi?
 
Zitat:

Zitat von xaromz
Zitat:

Zitat von Dust Signs
Oder alternativ mit Zeigern (ungetestet)

Du solltest vielleicht dazuschreiben, dass das eine Sauerei ist und kein Delphi :stupid:

Dito, und wenn, dann sollte man fuer diesen Bereich die Code-Optimierung abstellen, sonst wird aus der Sauerei ein Schlachtfeld ;)

Alternative: While-Schleife:
Delphi-Quellcode:
i := i1;
while (i <= i2) do
begin
  //Code
  inc(i, 2);
end;
greetz
Mike


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz