Hi ich bin neu und ich weiß nicht ob ihr mir helfen könnt?
(Ich schreibe am Montag ne Arbeit über Niki mit Rekursionen)
Deshalb versuche ich alles zu wiederholen!
Aber da gibt es ein Problem:
Das letzte Projekt Niki und die Rekursionen haben wir nicht zu ende besprochen!
Die Aufgabe lautete wie folgt:
1. Aufgabe :
Niki muss den Eingang des Labyrints (Schlange) finden egal in welche Richtung er steht.
2. Aufgabe :
Niki sollte das Labyrint betreten, den Gegenstand ( Gegenstände ? ) suchen, dann aufnehemen und zum Eingang rekursiv zurückkehren.
3. Aufgabe :
Niki muss nun zum Startpunkt (Aussgangspunkt) zurückkehren.
Dabei legt er dort auch den Gegenstand ab.(Aber das ist, glaube ich, egal)
Bitte schaut mal in diese Editor-Texte:
->
program test;
procedure drehe_rechts;
begin
drehe_links;
drehe_links;
drehe_links;
end;
procedure drehe_um;
begin
drehe_links;
drehe_links;
end;
procedure zume; {zurw }{geht totzdem zur Wad, andere procedure}
begin
if not vorne_frei
then drehe_links;
{else do vor;}
zume;
{end;}
end;
{durchs lab oder so}
{begin
if rechts_frei and links_frei and vorne frei;
then begin;
drehe_um;
vor;
end;}
{Hauptprogramm}
begin
zume;
end.
2. Vorschlag:
->
program LabyRekursiv;
procedure drehe_um;
begin;
drehe_links;
drehe_links;
end;
procedure drehe_rechts;
begin;
drehe_links;
drehe_links;
drehe_links;
end;
procedure zume; {rekursiv zum Eingang gehen}
begin;
if not rechts_frei
then begin
if vorne_frei
then vor
else drehe_links;
zume;
{Rekursion, die durchs Labyrinth führt}
if rechts_frei and links_frei and vorne_frei {steht am Eingang}
then begin
drehe_um;
vor;
end;
end;end;
procedure zurw; {zur Wand gehen}
begin;
if vorne_frei
then begin
vor;
zurw;
end
else
begin
drehe_links;
zume;
end;
end;
{Hauptprogramm}
begin
zurw;
end.
Aber das ganze funktioniert irgendwie nicht!?
Bitte um Hilfe!
Afro