lunes, 19 de mayo de 2014

EJERCICIOS DE 1.1 Y 1.2. Capitulo 1

Se nos presenta el siguiente árbol familiar:
se puede representar en Prolog con el siguiente programa :
progenitor( pamela, roberto).
progenitor( tomas, roberto).
progenitor( tomas, elizabeth).
progenitor( roberto, ana).
progenitor( roberto, patricia).
progenitor( patricia, jaime).
Ejercicios.
1. Asumiendo las relaciones definidas en el ejemplo, ¿qué contestará Prolog a las
siguientes preguntas?
a). ?- progenitor( jaime, X).
False, pues Jaime no es progenitor de nadie.
b). ?- progenitor( X, jaime).
Solo si X=patricia
c). ?- progenitor( pamela, X), progenitor( X, patricia).
Solo si X=roberto, pues el progenitor de patricia es Roberto y el progenitor de Roberto es pamela
 d). ?- progenitor( pamela, X), progenitor( X, Y), progenitor(Y,jaime).
Solo si Y= patricia, pues el progenitor de Jaime es patricia, entonces como ya tenemos a Y, entonces X=roberto, pues el progenitor de patricia es Roberto y el progenitor de Roberto es pamela.

2. Formule en Prolog las siguientes preguntas acerca de la relación progenitor:
a). ¿ cómo se llama el progenitor de patricia ?
?- progenitor( X, patricia).
b). ¿ tiene elizabeth algún hijo ?
?- progenitor( elizabeth, X).
c). ¿ cómo se llama el abuelo de patricia ?
?- progenitor( Y, patricia) , progenitor( X, Y).
?- progenitor( X, Y) , progenitor( Y, patricia).


No hay comentarios:

Publicar un comentario