Darstellung von LOOP Programmen

Neue Frage »

Auf diesen Beitrag antworten »
yuro123 Darstellung von LOOP Programmen

Hallo erstmal,

Folgende Aufgabe wird gestellt:
LOOP Programme sollen dargestellt werden. Folgende L-Makros sind gegeben:

Zitat:

Bsp 1:
a)if xi > 0 then A end

Lösung:
y := 0;
loop xi do y := 1 end;
loop y do A end



Zitat:

Bsp 2:
b)xi := xj •- xk

Lösung:

xi := xj ;
loop xk do xi := xi •- 1 end


•- (punkt steht über dem Strich.. modifiziert)


Die Frage ist wie finde ich den Lösungsweg?
 
Auf diesen Beitrag antworten »
Karlito

Hallo,

ich kann die Frage nur so beantworten: Die Beispiele verstehen und versuchen ähnliche Strategien für andere Aufgaben anzuwenden. Es braucht ein wenig Training und vlt auch Erfahrung, aber irgendwann sieht man den Weg.

VG,

Karlito
Auf diesen Beitrag antworten »
yuro123

Ok also gibt es keine genaue Vorgehensweise? Wie man das z.B. erklären könnte.

Also mir ist klar das erst gefragt wird

wenn xi größer 0 ist soll A ausgeführt werden.

für y wird für 0 definiert.

die loop schleife geht xi durch und führt y aus.

warum wird am ende nochmal eine loop schleife für das y genutzt?

Edit:
Oder ist das so gemeint:

Die Loop Schleife geht das xi größer y solange durch bis die IF Abfrage nicht mehr gültig ist. Ist das der Fall wird then A ausgeführt also in dem Fall die zweite Loop Schleife loop y do A end?

(also zum ersten Bsp)
Auf diesen Beitrag antworten »
as_string

Hallo,

Dein "edit" verstehe ich leider nicht wirklich...

Beim ersten Beispiel ist das so gemeint:
y wird auf 0 gesetzt. Allerdings wird darauf so häufig y eine 1 zugewiesen, wie xi angibt. Wenn also xi 5 ist, dann wird fünf mal y gleich 1 gesetzt. Dann ist es natürlich auch gleich eins. Wenn xi 3 ist, dann wird dreimal 1 y zugewiesen, also ist y wieder 1. Wenn xi 0 ist, was ist dann y nach der ersten LOOP Anweisung?

Die zweite führt dann A so oft aus, wie y jetzt als Zahlenwert hat. Wenn also xi 5 war, ist y ja inzwischen 1 und A wird einmal ausgeführt. Genau so, wenn xi 3 ist.
Wie oft wird A ausgeführt, wenn xi zu Beginn 0 war?

Vergleiche das mit dem vorher angegeben (nicht-LOOP) Pseudocode!

Gruß
Marco
 
Auf diesen Beitrag antworten »
yuro123

Hej Marco,

dein Beitrag war sehr hilfreich. Dankeeee dir smile

werde die anderen Aufgaben nochmal durchgehen. Aber jetzt ist es mir schon einleuchtender smile

Kannst du mir auch bei meinem anderen Thema "Konfigurationswechsel" vll helfen?

Gott Gott
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »