Wie würde ich eine rekursive Zwei-Satz-Definition schreiben, um den Maximalwert in einer Liste zu finden. Bisher habe ich dieses geschrieben habe:Zwei-Klausel-Definition, um die maximale Anzahl in einer Liste zu finden
max(L,M):-
max([H|T],M):-
max(T,H,M).
max([],M,M).
max([H|T],Y,M):-
H =< Y,
max(T,Y,M).
max([H|T],Y,M):-
H > Y,
max(T,H,M).
dies nicht funktioniert, sagt, es gibt es einen Syntaxfehler, die ich nicht ganz sehen können, und ich weiß es auch nicht zwei Klausel ist. Wer weiß, wie ich es vereinfachen könnte, um es zu zweit zu machen?
Wenn diese Hausaufgaben ist, sollten Sie Fügen Sie der Frage das Tag "Hausaufgabe" hinzu. –
Nein, das sind keine Hausaufgaben, es ist nur eine grundlegende Schwierigkeit, die ich beim Versuch, Prolog zu verwenden, gefunden habe. – Taylor