Delphi-Quellcode:
Procedure Arbeiten;
Begin
if aktuell=1 then
AnfangsKarte;
if (aktuell<10) AND (aktuell>1) then
begin
if Vergleichen(aktuell)= 1 then
begin
gedreht:=0;
benutzt:=0;
aktuell:=aktuell+1;
end
else
Drehen(aktuell);
if aktuell<10 then Arbeiten;
end;
End;
Wenn in Deinem Code bei Vergleichen(aktuell) keine 1 herauskommt
dann wird aktuell nicht erhöht.
Danach wird die Prozedur wieder aufgerufen.
Drehen erhöht den Wert von aktuell nicht.
Stacküberlauf deutet daraufhin das die Rekursion
in einer Endlosschleife läuft.
Grüße
Klaus