Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Consulta TP Logico
Autor Mensaje
niko93_15 Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 156
Agradecimientos dados: 3
Agradecimientos: 3 en 3 posts
Registro en: Jan 2011
Mensaje: #1
Consulta TP Logico Dudas y recomendaciones Paradigmas de Programación
Estoy tratando de encontrarle la vuelta, pero no logro como resolver este ejercicio. Yo lo hice de esta forma, que por lo que me conto el ayudante no es la mejor (esta mal).

Les dejo el enunciado:
Un asesino siempre odia a su víctima y nunca es más rico que ella. El asesino de la tía Agatha,
además, vive en la mansión Dreadbury.
Tía Agatha, el carnicero y Charles son las únicas personas que viven en la mansión Dreadbury.

El carnicero odia a las mismas personas que odia tía Agatha.
Charles odia a todas las personas de la mansión que no son odiadas por la tía Agatha.
Agatha odia a todos los que viven en la mansión, excepto al carnicero.
Quien no es odiado por el carnicero y vive en la mansión, es más rico que tía Agatha

Al programa le tengo que poder preguntar quién es el asesino de la tía Agatha y tiene que brindar una sola
respuesta.




SOLUCION MIA:

viveEnMansionDreadBury(carnicero).
viveEnMansionDreadBury(charles).
viveEnMansionDreadBury(agatha).

odiadosPorAgatha(charles).
odiadosPorCharles(Persona):-
viveEnMansionDreadBury(Persona),
not(odiadosPorAgatha(Persona)).
odiadosPorCarnicero(Persona):-
odiadosPorAgatha(Persona).

esMasRicoQueAgatha(Persona):-
not(odiadosPorCarnicero(Persona)),
viveEnMansionDreadBury(Persona).

esElAsesino(charles, agatha):-
odiadosPorCharles(agatha),
esMasRicoQueAgatha(agatha).

esElAsesino(carnicero, agatha):-
odiadosPorCarnicero(agatha),
esMasRicoQueAgatha(agatha).


El ayudante resalto dos errores. Primero, que deberia de plantear una regla "odiaA(Persona, OtraPersona) si cumple determinada condicion". El otro, me dijo que plantee armar "esElAsesino" genericamente para asi no tener varias.
El problema radica en que estoy hace horas pensado la regla odiaA pero sinceramente no se me ocurre como armarlo. Alguna idea?
01-07-2015 16:34
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)



    This forum uses Lukasz Tkacz MyBB addons.