Prolog - Necesito ayuda en un programa de prolog.

<<>>
 
Vista:

Necesito ayuda en un programa de prolog.

Publicado por Juan Ponkosky (1 intervención) el 27/09/2023 06:57:25
% Predicado para obtener la cabeza de una lista no vacía.
obtener_cabeza([Cabeza | _], Cabeza).

% Predicado para combinar sublistas de manera alternada.
combinar_sublistas([], []).
combinar_sublistas([Sublista | Resto], [Cabeza | RestoResultado]) :-
obtener_cabeza(Sublista, Cabeza),
combinar_sublistas(Resto, RestoResultado).

% Predicado principal para combinar sublistas de manera alternada.
combinar_listas(ListaOriginal, Resultado) :-
combinar_sublistas(ListaOriginal, Resultado).

Tengo este codigo, y cuando hago la siguiente consulta, ?- combinar_listas([[a,b,c],[d,e],[f,g,h,i]], Resultado).
me da como resultado: Resultado = [a, d, f]. en vez de seguir con el resto de los elementos de las sublistas y deberia darme el siguiente resultado, Resultado = [a, d, f, b, e, g, c, h, i].
Como puedo hacer para que me de el resultado esperado? Desde ya muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder