Ablauf einer FOR-Schleife

  • Hallo Zusammen,


    ich bereite aktuell offline ein Programm vor und kann dementsprechend nicht testen ob mein Ablauf wie gewünscht funktioniert (KSS8.7).


    Mir geht es letztendlich um den Schritt für Schritt Ablauf einer FOR-Schleife. Wann genau wird der Startwert um die Schrittweite erhöht?



    Folgender Hintergrund:

    Für meinen Startwert nutze ich eine Variable und innerhalb der FOR-Schleife springe ich über ein "Exit" aus der Schleife heraus.

    Wird der Startwert trotz eines Rausspringens über "Exit" erhöht, oder wird der Startwert erst über die Zeile "Endfor" erhöht?

  • Schritt für Schritt zum Roboterprofi!
  • Die Zuweisung sollte beim Einsprung erfolgen. FOR -> "für". Ließe sich ja im deutschen Klartext so übersetzen:


    "Für jedes vorhandene Element in der Menge aller Ganzzahlen X, von denen A die erste ist und Z die letzte, und zwar gesprungen um jeweils STEP, tue das Folgende: "


    Eigentlich ist es noch nicht mal legitim, außerhalb der Schleife einen gültigen Wert des Index (des Feldes der Elemente der Menge) zu erwarten. Nun aber, da er durch nichts überschrieben wird, ist er halt da... und sollte auch vorläufig so bleiben.

    Tatsächlich wäre ich mir eher unsicher, ob er nicht bei vollständigem Durchlauf der Schleife einen höher ist als die Obergrenze oder sonstwie ungültig, wie das exakt bei KRL aussieht habe ich vergessen, irgendwoher kenne ich das aber. Wäre jedenfalls zu beachten, falls Deine Exit-Bedingung nichts fängt.


    Vom Design / Verständnis her ist eine FOR-Schleife eher gedacht für ALLE aufgeführten Elemente. Für "mache bis..." oder "mache, solange..." gibt's ja REPEAT und WHILE; nur so am Rande laut gedacht.... aber erlaubt ist, was funktioniert.

  • zB


    FOR n= 3 to 11 Step 3

    lauft mit n=3,6,9. am ende, n=12 aber das ist nicht in Bereich 3..11


    FOR n= 3 to 11 Step -3

    lauft mit n=3,0,-3,-6,-9, -12,-15,usw... (bis Ueberlauf)


    FOR n= 3 to 11 Step 5

    lauft mit n=3,8. am ende, n=13 aber das ist nicht in Bereich 3..11


    FOR n= 3 to -11 Step -4

    lauft mit n=3,-1,-5,-9. am ende, n=-13 aber das ist nicht in Bereich 3..-11


    FOR n= 3 to -11

    lauft mit n=3,4,5,6,7,8,9,10,11,12,13,14,usw... (bis Ueberlauf)

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden