AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi in repeatschleife zum anfang der schleife springen
Thema durchsuchen
Ansicht
Themen-Optionen

in repeatschleife zum anfang der schleife springen

Ein Thema von PhöniX · begonnen am 10. Feb 2004 · letzter Beitrag vom 10. Feb 2004
Antwort Antwort
Seite 1 von 2  1 2      
PhöniX

Registriert seit: 24. Jan 2004
Ort: Marienfeld
149 Beiträge
 
Delphi 5 Professional
 
#1

in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:19
Hi,
Einfch Frage:
Wie kann man in einer repeatschleife zum anfang der schleife springen, wenn man nciht will, das until erreicht wird...
z.b.:
Delphi-Quellcode:
repeat// <___________________
button1.Caption := '1'; // \
nummer := nummer +1; // |
if nummer = nummer1 then// |
//zum anfang springen _______/
until bla = bla2;
Ich hoffe ihr versteht was ich emine!!
DANKE
cya PhöniX
besucht www.lycoweb.de
  Mit Zitat antworten Zitat
MikeS

Registriert seit: 3. Mai 2003
Ort: München
157 Beiträge
 
Delphi 7 Professional
 
#2

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:21
ich verstehe den sinn nicht ganz!

was hast du denn vor?
das die schleife noch einmal ausgeführt wird?
Mike Schröder
Fleiß kann man vortäuschen, faul muss man schon selber sein!
  Mit Zitat antworten Zitat
Benutzerbild von Christian S.
Christian S.

Registriert seit: 19. Apr 2003
Ort: Düsseldorf
835 Beiträge
 
#3

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:27
Hallo!

Das sollte sich mit "continue;" machen lassen.

MfG
Peter
Christian S.
Admin in der Entwickler-Ecke
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#4

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:29
Diese Go To's bzw. continues sind eigentlich ziemlich unsauber- finde ich zumindest (schlecht lesbar,...). Eigentlich kann man auch alles so lösen. Kann mich jetzt nur meinem Vorredner anschließen, was hast du vor?
  Mit Zitat antworten Zitat
PhöniX

Registriert seit: 24. Jan 2004
Ort: Marienfeld
149 Beiträge
 
Delphi 5 Professional
 
#5

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:32
und wie macht manndas wenns so is
Delphi-Quellcode:
repeat
...
 repeat
 ...
 //von hier zum ersten repeat
 until...
until...
cya PhöniX
besucht www.lycoweb.de
  Mit Zitat antworten Zitat
MikeS

Registriert seit: 3. Mai 2003
Ort: München
157 Beiträge
 
Delphi 7 Professional
 
#6

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:34
wieso?

wenn die Bedingung der inneren Schleife erfüllt ist dann fängst du doch in der
äußeren wieder oben an!
Du mußt doch nur die Bedingungen richtig definieren!

Oder was verstehe ich falsch
Mike Schröder
Fleiß kann man vortäuschen, faul muss man schon selber sein!
  Mit Zitat antworten Zitat
PhöniX

Registriert seit: 24. Jan 2004
Ort: Marienfeld
149 Beiträge
 
Delphi 5 Professional
 
#7

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:39
Delphi-Quellcode:
repeat
     maxiEng := FormVocsEng.TableEng.RecordCount;
     inc(maxiEngCount);
       if maxiEngCount = maxiEng then
        if MessageDlg('Anzahl der abzufragenden Vokabeln nicht erreicht,'+#10#13+
        'weil nicht genügend Vokabeln verfügbar sind.',mtInformation,[mbOK],0) = mrOK then
        begin
        //kommt noch
        end;
     FormVocsEng.TableEng.first;
     maxiEng := FormVocsEng.TableEng.RecordCount;
     randomize;
     zufallszahl := random(maxiEng);
     repeat
      FormVocsEng.TableEng.next;
      inc(SollZahl);
     until SollZahl = zufallszahl;
     DataSet[datenumber] := FormVocsEng.TableEng.FieldByName('Englisch').AsString;
     repeat
      dec(dateproof);
      if DataSet[dateproof] = DataSet[datenumber] then
      //wenn dateproof = datenumber dann repeat von vorne
     until dateproof = 0;
     until dateproof = 0;
    end;
hier der code.. guckt mal durch
es soll dannn zum erste repeat gesprungen werden
cya PhöniX
besucht www.lycoweb.de
  Mit Zitat antworten Zitat
MikeS

Registriert seit: 3. Mai 2003
Ort: München
157 Beiträge
 
Delphi 7 Professional
 
#8

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:42
Zitat:
repeat
dec(dateproof);
if DataSet[dateproof] = DataSet[datenumber] then
//wenn dateproof = datenumber dann repeat von vorne
until dateproof = 0;
versuche es doch mal so

Delphi-Quellcode:
repeat
  dec(dateproof);
until(DataSet[dateproof] = DataSet[datenumber]);
dann wird die schleife beendet und du fängst in der anderen wieder an.
Mike Schröder
Fleiß kann man vortäuschen, faul muss man schon selber sein!
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#9

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 15:47
Zitat von PhöniX:
Hi,
Einfch Frage:
Wie kann man in einer repeatschleife zum anfang der schleife springen, wenn man nciht will, das until erreicht wird...
z.b.:
Delphi-Quellcode:
repeat// <___________________
button1.Caption := '1'; // \
nummer := nummer +1; // |
if nummer = nummer1 then// |
//zum anfang springen _______/
until bla = bla2;
Ich hoffe ihr versteht was ich emine!!
DANKE

---------------

ich benutze sprünge auch manchmal, wenns nämlich so kompliziert in der schleife werden würde, dass man nicht mehr durchsieht, und der Algorithmus dadurch unleserlich werden sollte.
Das wichtigste ist immer noch das Verstehen des Textes durch den MEnschen, nicht ob nun Sprünge nicht schön oder unsauber sein sollen, meine Meinung


also der befehl continue springt zum ende der schleife.
in der repeat schleife hätte das sicherlich Deinen Sinn den Du willst.
in einer For Schleife bewirkt continue dass er halt zum ende springt und mit dem nächsten "i" weitermacht. break springt zum Ende der gesamten schleife und beendet diese komplet.
Exit springt zum ende der ganze Procedure


manuelle sprungmarken:

Procedure test;
var i : integer;
label Sprungmarke;

begin

repealt

Sprunmarke:

a := a +b;

if a = 10 then goto sprungmarke;


until sonstwas;



Gruß
  Mit Zitat antworten Zitat
PhöniX

Registriert seit: 24. Jan 2004
Ort: Marienfeld
149 Beiträge
 
Delphi 5 Professional
 
#10

Re: in repeatschleife zum anfang der schleife springen

  Alt 10. Feb 2004, 16:40
irgend wie funktioniert das nich mit dem goto...
jannst du mir mal die genauen befehle sagen?
cya PhöniX
besucht www.lycoweb.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz