Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - problem bei "for-schleife"


JacFab - Mo 12.05.03 21:45
Titel: problem bei "for-schleife"
wenn ich bei einer for-schleife nur jeden 2. schritt ausführen lassen will, ging das bei basic mit "step".
aber wie geht das bei delphi, bzw pascal????


UGrohne - Mo 12.05.03 21:53

Wenn Du nur jedes 2. mal die Laufvariable haben willst, kannst Du entweder das i (hier die Laufvariable) beim Zugriff verdoppeln. Oder Du machst ein continue, wenn du den nächsten Schleifendurchlauf machen willst und den derzeitigen abbrechen.

Alternativ kannst Du auch eine Konstruktion mit while machen:

Quelltext
1:
2:
3:
4:
5:
i:=0;
while i<=10 do begin
   {...}
        i:=i+2;
        end;


Noch Fragen?

Gruß


JacFab - Mo 12.05.03 21:56

ja das ist aba total umständlich! das geht garantiert auch anders. außerdem kann man für

Quelltext
1:
i:=i+2;                    

auch

Quelltext
1:
inc (i,2)                    

schreiben 8)


Delete - Mo 12.05.03 22:07

In Delphi läßt sich die Zählvaraible einmer for-Schleife nicht ändern.


Delete - Di 13.05.03 07:37


Quelltext
1:
2:
3:
4:
for i := 1 to 10 do
  if(i mod 2 = 0) then begin
    { ... }
  end;

führt nur die Schritte 2, 4, 6, 8 und 10 aus.


Udontknow - Di 13.05.03 08:20

Luckie hat folgendes geschrieben:
In Delphi läßt sich die Zählvaraible einmer for-Schleife nicht ändern.



Quelltext
1:
2:
3:
4:
5:
for i:=1 to 10 do
begin
  Inc(Integer((@i)^));
  ShowMessage(IntToStr(i);
end;


Ja, ich gebe zu, es ist getrickst. :wink:

Cu,
Udontknow


JacFab - Di 13.05.03 13:06

vielen dank @ all... das hat mir schon weitergeholfen!
@ Luckie
Zitat:
In Delphi läßt sich die Zählvaraible einmer for-Schleife nicht ändern.


er hatte mir ja auch als beispiel keine for-schleife sondern ein beispiel mit while gegeben! da kann man die zählvariable ändern!!


Delete - Di 13.05.03 13:37

Stimmt aber irgendwer hat da was mit einer for-Schleife dazwischen geplappert. Und das man in einer while-Schleife die Zählvariabel verändern kann, ist ja zwingend notwendig.


JacFab - Di 13.05.03 13:56

jaja eben! :autsch: