Autor
|
Thema: Schleife verlassen (4004 mal gelesen)
|
uobeg Mitglied

 Beiträge: 15 Registriert: 19.10.2009 eM-Plant 6.0
|
erstellt am: 24. Jan. 2010 13:09 <-- editieren / zitieren --> Unities abgeben:         
Hallo emPlantler, ich möchte einen komplizierten Algorithmus bauen, in dem mehrere Schleifen miteinander verschachtelt sind. Kann man in simple++ eine Schleife durch einen Befehl verlassen und dabei in die nächst höhere Schleife springen? Habe nichts in der Hilfefunktion gefunden (kein leave, kein exit, kein abbrechen,kein goto, kein jump,...das passen würde). Danke für eure Hilfe! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
uobeg Mitglied

 Beiträge: 15 Registriert: 19.10.2009 eM-Plant 6.0
|
erstellt am: 24. Jan. 2010 13:16 <-- editieren / zitieren --> Unities abgeben:         
sorry, habe die Antwort gerade in diesem tollen Forum gefunden! Leider geht der Befehl exitloop in meiner Version(emPlant 6.0) nicht, oder habe ich was falsch gemacht? is i : integer; j: integer; do For j := 1 to 2 loop For i:= 1 to 20 loop print to_str(i) + to_str(j); If i= 10 then exitloop; End; Next; Next; end; Fehlermeldung: unbekannter Name exitloop und in der Hilfefunktion gibts diesen Befehl auch nicht. DANKE Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
planty Mitglied Dipl.-Ing.
 
 Beiträge: 139 Registriert: 18.09.2006
|
erstellt am: 24. Jan. 2010 19:23 <-- editieren / zitieren --> Unities abgeben:          Nur für uobeg
Moin, Du kannst Dir natürlich Schleifenkonstrukte bauen, die den gleichen Zweck erfüllen: Code:
is n : integer; doContinue : boolean; do n := 0; doContinue := true; while n <= 10 and doContinue loop n := n +1; if n = 5 then -- do not doContinue := false; else -- do print n; end; end; end;
Die 'from' Schleife initialisiert zu beginn die Variable, vereinfacht aber sonst auch nichts. Gruß P. ------------------ Two hours of trial and error can save ten minutes of manual reading! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Homer Simpson Mitglied
 
 Beiträge: 345 Registriert: 14.09.2005
|
erstellt am: 25. Jan. 2010 17:59 <-- editieren / zitieren --> Unities abgeben:          Nur für uobeg
Die exitloop-Anweisung gibt es seit eM-Plant 7.5, das bereits 5 Jahre alt ist. Alternativ geht aber auch das: Code: is x, y : integer; do for x := 1 to 3 loop for y := 1 to 10 loop print x, ", ", y; if y = 5 then y := 999999; --exitloop else --continue loop end; next; next; end;
[Diese Nachricht wurde von Homer Simpson am 25. Jan. 2010 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
uobeg Mitglied

 Beiträge: 15 Registriert: 19.10.2009 eM-Plant 6.0
|
erstellt am: 29. Jan. 2010 18:06 <-- editieren / zitieren --> Unities abgeben:         
|