Es ist eine Aufgabe des TE. Also vermutlich Schule.
Ob es sinnvoll ist, dass mit einer einfach verketteten Liste zu machen, kann man in Frage stellen.
Ich habe die Funktion mal schnell fertig gemacht (mir war gerade danach):
Delphi-Quellcode:
function ZeigListMax (inRefAnfang : tRefListe) : tRefListe;
begin
Result := inRefAnfang;
if inRefAnfang <> nil then
begin
if inRefAnfang^.next <> nil then
begin
if inRefAnfang^.info >= ZeigListMax(inRefAnfang^.Next).info then
begin
Result := inRefAnfang;
end
else
begin
Result := ZeigListMax(inRefAnfang^.Next);
end;
end;
end;
end;
Nicht hübsch, aber sollte funktionieren und ohne Schleifen.
Übrigens ist der doppelte Aufruf um Hauptprogramm so nicht erforderlich.