¿Cómo escribiría una definición recursiva de dos cláusulas para encontrar el valor máximo en una lista? Hasta ahora he escrito esto:Definición de dos cláusulas para encontrar el número máximo en una lista
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).
Esto no funciona, se dice que hay un error de sintaxis que no puedo ver bien, y sé que no es de dos cláusula tampoco. ¿Alguien sabe cómo podría simplificarlo para convertirlo en dos cláusulas?
Si esta es la tarea, usted debe agrega la etiqueta 'tarea' a la pregunta. –
No, esto no es tarea, es solo una dificultad básica que encontré cuando traté de usar Prolog. – Taylor