Seite 1 von 3
For-Schleife - variables Step?
Verfasst: 05.11.2004 14:50
von Torakas
Hi Leute,
ich habe ein damit verbundenes großes Problem wenn das nicht geht, was meiner meinung gehen sollte.
Wenn ich z.B. folgendes programmiere, dann gibt er mir eine Fehlermeldung das nach dem Step eine Numeric Variable erwartet wird. Ist es aber.
Code: Alles auswählen
TickSize2.w = 900
For i2 = 1 To 2700 Step TickSize2
(Programmcode)
Next
Da die TickSize variable ein muss gibt es dort halt ein problem. Hab jetzt dies nur mal als beispiel geschrieben. Normalerweise soll gezaehlt werden von einer Unixtimestamp x bis zur Unixtimestamp y in z Schritten.
Ich hab mir jetzt notgedrungen geholfen mit einer While:Wend schleife. Aber das kann ja nicht richtig sein.[/code]
Re: Bug: For Schleife (Step)
Verfasst: 05.11.2004 14:54
von Kiffi
Hai Torakas,
ist'n bekanntes Problem. Abhilfe:
http://www.robsite.de/php/pureboard-arc ... php?t=4654
Grüße ... Kiffi
Verfasst: 05.11.2004 16:37
von MLK
warum sehen die lösungen alle so kompliziert aus ?
Verfasst: 05.11.2004 16:43
von Lebostein
Genau aus diesem Grund versteh ich nicht, warum die Steps keine Variablen sein können. Technisch ist das doch kein Problem. Aber wahrscheinlich ist es ein zeitliches Problem für die Entwickler....
...aber es gibt schon zu viele Threads, in denen über das wackelige Grundgerüst von PureBasic gemeckert wird, tschuldigung, dass ich wieder damit anfange.
Verfasst: 05.11.2004 17:23
von GPI
@mlk:
Weil das Pfusch ist und eine unsaubere Methode.Bei größeren Projekten kann das dazu führen, das man sich nach einiger Zeit fragt, warum man das da gemacht hat.
Verfasst: 05.11.2004 17:28
von MLK
@GPI
ÄÄHM ... selbstverständlich
Verfasst: 05.11.2004 18:21
von GPI
@MLK
Dein Sarkasmus kannst du dir verkneifen.
Die Zählvariable sollte bei saubererprogrammierung nur von For-next beinflußt werden.
Verfasst: 05.11.2004 18:41
von Ynnus
Komisch dass hier plötzlich jeder mit angeblichen Bugmeldungen kommt... Nicht alles ist ein Bug. Und die Fehlermeldung von PureBasic ist doch eindeutig, dass Stepwerte nur Integer und konstanten sein dürfen. Bevor jetzt jeder laut "Bug" schreit und Neuankömmlinge verwirrt und vertreibt besser erstmal das Problem genau untersuchen.
Und @MLK:
Wo bitte ist denn die Lösung welche da vorgeschlagen wurde so kompliziert? Ist doch einfachste Schleifensache, nicht mehr.
Verfasst: 05.11.2004 19:07
von Rob
Wie oben schon gesagt ist das kein Bug. Hab die Überschrift mal zu was weniger missverständlichem geändert.
Verfasst: 05.11.2004 19:13
von MLK
selbstverständlich kann man, wenn die FOR-schleife keine stepvariable zulässt, diese durch eine WHILE-schleife ersetzen. weder die eine noch die andere sollte als pfusch bezeichnet werden. es ist geschmackssache zu welcher lösung man greift.
Code: Alles auswählen
stepper=2
x=0
While x < 100
Debug x
x+stepper
Wend
stepper=2
For x=0 To 100
Debug x
x-1+stepper
Next