![]() |
FOR Schleife mit Schrittweite STEP...
Hallo,
im BASIC kann man doch mit FOR mI = 1 to 500 STEP 5 in 5.-Schritten durch die Schleife gehen. Kann das sein, dass die DELPHI-For-Schleife das nicht kann? Oder? MfG Foxgrove |
Re: FOR Schleife mit Schrittweite STEP...
Hi!
Wusst ich doch, dass ich das schon mal gelesen hatte: ![]() Ciao Frederic |
DP-Maintenance
Dieses Thema wurde von "Christian Seehase" von "VCL / WinForms / Controls" nach "Object-Pascal / Delphi-Language" verschoben.
Die Frage bezieht sich auf die Sprache als solche |
Re: FOR Schleife mit Schrittweite STEP...
Moin Foxgrove,
stimmt, Du kannst in Delphi bei For-Schleifen keine Schrittweite angeben. Ich habe mir Frederics angegebenen Thread nicht vollständig durchgesehen, deshalb hier ein Workaround:
Delphi-Quellcode:
while i <= 500 do begin
// Mach was in der Schleife inc(i,5); end; |
Re: FOR Schleife mit Schrittweite STEP...
also ich hab gelesen, man sollte Schleifenvariablen tunlichst nicht manipulieren :gruebel:
wäre es nicht sicherer für eine korrekte Ausführung einfach die gesamte Anweisung mittels if einzufassen:
Delphi-Quellcode:
was sol das überhaupt bringen, die Schleife Schrittweise auszuführen?
wihlwhile i <= 500 do begin
if i mod 5 = 0 then begin // Mach was in der Schleife end; end; |
Re: FOR Schleife mit Schrittweite STEP...
Hallo,
das ist doch hier keine Schleifenvariable im eigentlichen Sinn. Du sollst bei einer Variablen ( hier n ), die in einem For .... do Statement vorkommt, nichts verändern.
Delphi-Quellcode:
Es gibt überhaupt keinen Grund step einzuführen.
For n:=0 to 1000 do
begin // das hier solltest du besser lassen, für was auch? inc(n,2); //Tu was mit n end; For n:=0 to 500 do begin // das hier funktioniert genauso m:=n*2; //Tu was mit m end; Dafür benutzt man repeat ... until oder while ... do Rainer |
Re: FOR Schleife mit Schrittweite STEP...
Zitat:
Ob du sie dabei um 1 oder um 5 erhoehst, macht keinen Unterschied. Die Laufvariable soll man nur in for-Schleifen in Frieden lassen ;) Greetz alcaeus |
Re: FOR Schleife mit Schrittweite STEP...
Zitat:
|
Re: FOR Schleife mit Schrittweite STEP...
So sollte es auch gehen,
Delphi-Quellcode:
Grüße
FOR i:=1 TO 500 DIV Step DO
BEGIN // Tu was mit i * Step END; Klaus |
Re: FOR Schleife mit Schrittweite STEP...
Hallo,
habs ausprobiert. Der Compiler meckert tatsächlich, wenn man versucht in For n:=1 to 100 do n zu verändern. Ist aber nur für D7 getestet. Im Original Pascal-Dialekt geht das und ist ausdrücklich erlaubt. In Turbo Pascal bis 7.0 ebenfalls. Rainer |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:22 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-2025 by Thomas Breitkreuz