repeat until und while do Schleife
spacer
Autor Nachricht
Anna95
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 17.01.12 16:09 
Hallo zusammen,
ich muss zu morgen eine Aufgabe für Info lösen und komme überhaupt nicht weiter und finde nichts im Internet:

Zeigen sie, dass man jede Wiederhol-Schleife(repeat until) durch eine äquivalente Solange-Schleife(while do) ersetzen kann. Schreiben sie einen Algorithmus(kein Programm). Überlegen sie, ob es umgekehrt auch geht. Treffen sie eine Aussage!

Könnt ihr mir vielleicht helfen?wäre lieb.


Moderiert von user profile iconChristian S.: Topic aus Neue Einträge / Hinweise / etc. verschoben am Di 17.01.2012 um 17:36
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Beiträge: 929
Erhaltene Danke: 70


Delphi 2010 Enterprise
BeitragVerfasst: Di 17.01.12 16:18 
Hallo und willkommen. :welcome:

Hast Du Dir schon mal überlegt, in was sich die beiden Schleifenformen unterscheiden? Ich denke, da solltest Du anfangen (man spricht von kopfgesteuerten Schleifen und fußgesteuerten Schleifen).
Nun kannst Du überlegen, ob und wie man die Schleifen untereinander austauschen kann.

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Anna95 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 17.01.12 16:43 
Natürlich weiß ich, wie man die beiden Schleifen unterscheidet. Bei der repeat until schleife wird die Schleife mind. einmal durchlaufen. Bei der while do schleife nicht unbedingt.
Aber das ist ja gerade der Unterschied. Deswegen verstehe ich nicht, wie man das ersetzen kann.
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Beiträge: 929
Erhaltene Danke: 70


Delphi 2010 Enterprise
BeitragVerfasst: Di 17.01.12 16:50 
Zitat:
Bei der repeat until schleife wird die Schleife mind. einmal durchlaufen. Bei der while do schleife nicht unbedingt.

Naja, damit hast Du ja schon die Antwort (fast) gefunden, Du hast es nur noch nicht gemerkt. :wink:
Die Fußgesteuerte Schleife wird min. 1x durchlaufen, das hast Du richtig erkannt. Ob die Kopfgesteuerte Schleife min. 1x durchlaufen wird, hängt von den Ausgangsbedingungen vor dem ersten Schleifendurchlauf ab.
Im Prinzip muss man bei der Ersetzung also doch nur dafür sorgen, dass die Bedingung bei der Kopfgesteuerten Schleife min. 1x erfüllt wird.

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Anna95 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Di 17.01.12 17:08 
okay danke, das hab ich verstanden.und geht es auch umgekehrt?
und wüsstest du ein beispielalgorithmus?

tut mir leid, ich bin nicht so das genie bei dem thema/:
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star
Beiträge: 2544
Erhaltene Danke: 137

Windows 7 Home Premium
Visual C# 2010 Express
BeitragVerfasst: Di 17.01.12 19:39 
Hallo,

umgekehrt (die while-Schleife durch repeat-until ersetzen) geht nur im Zusammenhang mit einer if-Abfrage, je nach Umsetzung auch noch mit einem zusätzlichen Break. :idea:

Grüße,
Yogu
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
rushifell
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star
Beiträge: 161
Erhaltene Danke: 6



BeitragVerfasst: Di 17.01.12 21:33 
Hallo,

Anna95 hat folgendes geschrieben:
Natürlich weiß ich, wie man die beiden Schleifen unterscheidet. Bei der repeat until schleife wird die Schleife mind. einmal durchlaufen.

Nicht nur. Bei der While-Schleife muss die Bedingung erfüllt sein, damit die Schleife weiterläuft. Bei der Repeat-Until-Schleife muss die Bedingung erfüllt sein, damit die Schleife abgebrochen wird.

Im Prinzip lässt sich jede Repeat-Until Schleife durch eine While-Schleife und umgekehrt ersetzten. Nur ist das eben nicht immer sinnvoll.

Hier mal ein möglicher Ansatz:
ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
7:
8:
//While-Schleife
While not(Bedingung) do
BEGIN
END;
//ersetzt durch Repeat-Until-Schleife
If not(Bedingung) then
Repeat
Until Bedingung;

Angaben ohne Gewähr ;-)

Gruß
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
home home