Prolog - ayuda!!!!

   
Vista:

ayuda!!!!

Publicado por ariel arielcasazola@gmail.com (1 intervención) el 13/04/2015 15:14:17
necesito ayuda con el ejercicio 6 que puse:

WAZZAAP!
Un grupo de docentes de PdeP quiere analizar su comunicación usando WhatsApp. Los mensajes que
se envían pueden ser a otra persona directamente o a un grupo al cual pertenecen.

%grupo(nombreDelGrupo, participantes)
grupo(socrates, [alf, gus, ana, florr, fer, dani, nahue]).
grupo(regaloParaAlf, [ana, gus, dani, florr, fer, nahue, nico, maiu]).

% Los mensajes pueden ser fotos, de texto o de voz y están
modelados con functores
% foto(nombreDelArchivo, epigrafe)
% texto(texto, emoticones)
% voz(loQueDijo, longitud)

%mensaje(enviadoPor, conversacion, mensaje, momentoDeEnvio)

mensaje(gus, socrates, foto("fotoDeLosAyudantesMasSexiesEnTraje.jpg", "Alto casorio pegamos!"),
fecha(29, 11, 2014, 20, 33)).
mensaje(nahue, entre(nahue,gus), texto("Hoy comemos en el roll?", []), fecha(10, 12, 2014, 12, 10)).
mensaje(nahue, socrates, voz("Essssa! Cuánta facha!!!!", 5), fecha(29, 11, 2014, 21, 20)).
mensaje(nahue, entre(nahue,gus), texto("", [smile]), fecha(10, 12, 2014, 12, 17)).
mensaje(gus, entre(nahue,gus), texto("Seeeee", [like, like, like]), fecha(10, 12, 2014, 12, 15)).

conexion(alf, fecha(10, 11, 2014, 1, 10)).
conexion(gus, fecha(10, 12, 2014, 12, 15)).
conexion(nahue, fecha(10, 12, 2014, 12, 16)).

Además de los predicados anteriores se cuenta con un predicado posterior/2 que se verifica para dos
functores fecha/5 si la primera posterior a la segunda.
posterior(fecha(_,_,A1,_,_), fecha(_,_,A2,_,_)):A1> A2.
posterior(fecha(_,M1,A,_,_), fecha(_,M2,A,_,_)):M1> M2.
posterior(fecha(D1,M,A,_,_), fecha(D2,M,A,_,_)):D1> D2.
posterior(fecha(D,M,A,H1,_), fecha(D,M,A,H2,_)):H1> H2.
posterior(fecha(D,M,A,H,M1), fecha(D,M,A,H,M2)):M1> M2.

Desarrollar los siguientes predicados de modo que sean totalmente inversibles haciendo buen uso de
las herramientas principales del paradigma lógico.

6) Armar una conversación como una secuencia de mensajes ordenados por el momento en que se
enviaron.

?conversacion(
Conversacion, Mensajes).
Conversacion = entre(nahue, gus) Mensajes = [ texto("Hoy comemos en el roll?", []), texto("Seeeee",
[like, like, like]), texto("", [smile])];
Conversacion = socrates Mensajes = [ foto("fotoDeLosAyudantesMasSexiesEnTraje.jpg", "Alto casorio
pegamos!"), voz("Essssa! Cuánta facha!!!!”, 5)]


yo lo hice asi pero no funciona :( si alguien me puede ayudar se lo agradeceria

conversacion(Conversacion,MensajesOrdenados):-
mensaje(_,Conversacion,_,_),
findall(Mensaje, mensaje(_,Conversacion,Mensaje,_),Mensajes),
ordenar(Mensajes,MensajesOrdenados).


ordenar(Mensajes,MensajesOrdenados):-
predsort(ordena3,Mensajes,MensajesOrdenados).
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
información
Otras secciones de LWP con contenido de Prolog
- Código fuente de Prolog
- Cursos de Prolog
- Temas de Prolog
información
Códigos de Prolog
- Juego Tres en raya
- Juego Rummy
- Problema resuelto