(inkl. While / Wend, welches nur aus historischen Gründen [Ur-Basic] überhaupt dabei ist).
Bernhard (auf dem Weg ins Bett)
Andreas (auch auf dem Weg ins Bett)
' Alle Zahlen von 1 bis 100
For i = 1 To 100
Print i
Next
'Alle möglichen Tupel
For i = 1 To 10
For j = 1 To 5
Print "Tupel " & i & j
Next
Next
'Alle möglichen Tupel
For i = 1 To 10
For j = 1 To 5
Print "Tupel " & i & j
Next i
Next j
'CountDown
For i = 10 To 1 Step -1
Print i
Next
Print "Start der Raumpatrouillie Orion"
Dim Start As Long
Dim Ziel As Long
Dim Schrittweite As Long
Start = 1.1
Ziel = 2.4
Schrittweite = 0.1
For X = Start To Ziel Step Schrittweite
Print x
Next
aber sieht oder wünscht jemand, dass man aus soetwas mit noch etwas mehr ein Thema machen würde für die Developer 2004 nächsten Februar?
OK, hier mal ein aktuelles Problem von mir:Geht sowas in irgendeiner Programmiersprache? Ich glaube nicht.
Do Until doc Is Nothing
Set nextdoc = dc.getnextdocument(doc)
'Docwerte einlesen
v_maske = doc.Form(0)
v_freigabe = doc.Dat(0)
'Wenn Maske nicht frm_12 und Freigabe leer, dann LOOP
If v_maske Is Not "frm_12" & v_freigabe = "" Then
Loop
End If
...........
.........
Loop
Schleifenkonstrukt | Bedingungskonstrukt | |
Kopf | for i = 1 to 15 step 2 | if i > 4 then |
Rumpf | Alles was zwischen Kopf und Endmarkierer steht. | Alles was zwischen Kopf und Endmarkierer steht. |
Endmarkierer (schliess-Tag für Kopf) | Loop | end if |
Geht sowas in irgendeiner Programmiersprache? Ich glaube nicht.Ich wußte das bisher nicht, aber ist gut zu wissen ;)
In Eclipse wird man übrigens wg. so Dingen wie "wie ist nochmal die Schleifensyntax" nicht aus dem Büroschlaf gerissen. Da tippt man einfach for oder while ein, drückt Strg + Leertaste, wählt den Typ der Schleife aus (ich hab ein paar homegrown dabei) bekommt den code in den Editor mit schwer zu beschreibenen Textmarkierern, über die man dann die spezifischen Namen der Variablen eintippt. Geht alles völlig reibungslos ohne nervige popup-Boxen*neidisch rüberschauend zu den Eclipse-Jungs*
Also jedes in einem Schleifenkonstrukt oder Verzweigungskonstrukt begonnene Schleifen- oder Verzweigungskonstrukt muß auch innerhalb des Schleifen oder Bedingungskonstrukt, in dem es geöffnet wurde, geschlossen werden.
Grausam aber wahr könnte man da doch einen goto durchführen (kenn ich noch von good old C64 Basic Zeiten :-))?Hell Nooo. (http://saloon.javaranch.com/ubb/graemlins/shocked2.gif)
Nur ne Idee....
Goto ist nicht einfach grausam sondern ein Synonym für das Ende der Zivilisation. Wenn ich das Wort höre, kommen mir unverzüglich Bilder von marodierenden, plündernden, vergewaltigenden Milizen an der afrikanischen Westküste in den Sinn.;D
Noch was: einen Schleifenkörper möglichst kurz zu halten ist nicht nur eine Frage der Uebersicht, sondern auch der Performance. Deshalb ist auch Vorsicht geboten mit Aufruf von Subroutinen anstelle der Ausprogrammierung einer Sequenz, da Subroutinen notorische Performance-Verschwender sind (keine Ahnung, welchen Preis man dafür in LotusScript zahlt, um das gleich mal klarzustellen).Der Aufruf von Subroutinen kostet einen gewissen Performance overhead, ok. Das wird beim erzeugen von lustigen layers of indirection mit Klassen tendentiell noch verstärkt. Und wenn man dann noch nifty die Objekte auf verschiedene Tiers verteilt und coole xml-Layer verwendet möglicherweise potentiert (und das ist dann oft ein Problem).
- measuring script performance
1. http://www.ferdychristant.com/fchristant/homepage.nsf/archive/20030325-0812%20AM?OpenDocument&count=-1
2. http://www.ferdychristant.com/fchristant/homepage.nsf/archive/20030328-0657%20AM?OpenDocument&count=-1
- perfomance testing
http://www.eview.com/eview/viewr5.nsf/e640f630a3361f84852568f600070fd3/61fb8d0e2748d24c85256a55007c9543?OpenDocument