Lotus Notes / Domino Sonstiges > Projekt Bereich
Welche Schleife wann in Script
Semeaphoros:
Wow, sieht schon ganz gut aus.
Beim Text über die Kopfgesteurten Do Schlaufen schreib sie vielleicht aus, nicht so kurz, wie ich das tat:
Do while ...... loop
Do until ...... loop
so wie das auch bei den fussgesteuerten der Fall ist.
Uebrigens, while ... wend gehört auch zu den kopfgesteuerten, währen for ... next zu den fussgesteuerten gehört.
do ... loop und forall passen nicht in dieses Schema, wobei gleich anzumerken ist, dass do .... loop von vielen Leuten eh als schlechte Struktur angesehen wird, da man die Schlaufe "gewaltsam" abbrechen muss, indem man mit einem exit loop aus der Mitte rausspringen muss. In vielen Theorien ist ein solches Verlassen einer Schlaufe schlichtweg verboten: Eine Schlaufe darf genau einen Ausgang haben. Und auch wenn ich die Ausnahme zulasse, vermeide ich es tatsächlich, bei einer Schlaufe einen zweiten Ausgang ..... oder einen Ausgang in der Mitte (wie er für do .... loop als einziger möglich ist) zu verwenden.
TMC:
danke für Deinen sehr hilfreichen Input Semeaphorus!
Werde ich noch einarbeiten.
by the way eine Frage an Dich (hab hier schon irgendwo gelesen, dass Du Dich früher verstärkt mit Sprache beschäftigt hast, wenn ich mich nicht irre):
Was ist richtig(er):
- Schleife
- Schlaufe
Ich persönlich sage unbewusst Schleife dazu.
Gruss,
TMC
Semeaphoros:
Nein, Du irrst nicht.
Trotzdem kann ichs nicht auswendig beantworten .... aber der Etymologieduden bestätigt meine Vermutung:
Schlaufe: südwestdeutsch uns scheizerisch, mundartlich, ältere Form von Schleife, im Hochdeutschen nur noch in Spezialbedeutungen wie "Lederring", "feste Schlinge", zB am Gürtel oder Skistock.
Damit ist beides dasselbe Wort und es hängt offenbar davon ab, wo Du wohnst, welches Du lieber verwendest und ob Dein Sprachstand eher etwas älter oder jünger ist *smile*
Semeaphoros:
Hm, da hab ich grad eine interessante Erscheinung gehabt:
Es sieht so aus, dass innerhalb einer Forall-Schlaufe/Schleife :-) kein Loop möglich ist. While Wend hat aber funktioniert, das ist eher seltsam, müsste aber wohl noch überprüft werden.
Don Pasquale:
@TMC,
da will ich auch gerne mein Scherflein beitragen ,
ich habe mir aber auch das einfachste rausgesucht.
For.. Next
Die iterative Schleife oder auch Zählschleife genannt
Die einfachste Schleifenform, die jeder kennt ist
wahrscheinlich die folgende. Dabei wird der Code
der zwischen For und Next befindet wiederholt.
Das i kann dabei durchaus als Grundlage für irgendwelche
Berechnungen dienen oder auch ignoriert werden.
--- Code: ---' Alle Zahlen von 1 bis 100
For i = 1 To 100
Print i
Next
--- Ende Code ---
Schleifen lassen sich schachteln, dabei muss beachtet
werden, dass sich ein Next _immer_ auf das vorherige
For bezieht
also :
--- Code: --- 'Alle möglichen Tupel
For i = 1 To 10
For j = 1 To 5
Print "Tupel " & i & j
Next
Next
--- Ende Code ---
und nicht:
--- Code: ---
'Alle möglichen Tupel
For i = 1 To 10
For j = 1 To 5
Print "Tupel " & i & j
Next i
Next j
--- Ende Code ---
Daraus folgt, dass die Bezeichner i und j hinter dem
Next auch weggelassen werden können.
Die Schrittweite
Die Schrittweite bei den bisherigen Beispieln war immer
1. Sie kann aber auch Negativ sein, wie bei einem
Countdown :
--- Code: ---'CountDown
For i = 10 To 1 Step -1
Print i
Next
Print "Start der Raumpatrouillie Orion"
--- Ende Code ---
Die Schrittweite kann aber auch jeden beliebigen
anderen Wert annehmen, z.B. 0.1
--- Code: ---
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
--- Ende Code ---
Der Befehl Step ist also eine Option. Deswegen wird er meist
in eckige Klammern gesetzt.
For [Step]
Next
Ciao
Don Pasquale
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln