Está en la página 1de 4

Lgica Computacional

Facultad de Informtica

Problemas
Hoja N1 1. Con el programa restaurante!1.pl" #$er ane%o&' formular las siguientes preguntas en Prolog. (Cules son las comidas )ue tienen consome en la entrada* (Cules son las comidas )ue no tienen naranja como postre* +. Completar el programa restaurante!1.pl" de forma )ue cada comida est, formada tambi,n por la eleccin de una bebida' a elegir entre $ino' cer$e-a o agua mineral. .. /l rbol genealgico de la figura se describe con el programa Prolog0 hombre(pedro). hombre(manuel). hombre(arturo). mujer(maria). padre(pedro, manuel). padre(pedro, arturo). padre(pedro, maria). 1 partir de estas afirmaciones' formular las reglas generales de0 ni2o#3' 4&' )ue e%presa )ue 3 es 5ijo o 5ija de 4. 5ijo#3' 4&' )ue e%presa )ue 3 es 5ijo $arn de 4. 5ija#3' 4&' )ue e%presa )ue 3 es una 5ija de 4. 5ermano!o!5ermana#3' 4&' )ue e%presa )ue 3 es 5ermano6a de 4. 5ermano#3' 4&' )ue e%presa )ue 3 es un 5ermano de 4. 5ermana#3' 4&' )ue e%presa )ue 3 es una 5ermana de 4. N7810 9n sujeto no puede ser 5ermano6a de s: mismo. manuel arturo maria pedro

Lgica Computacional

Facultad de Informtica

;. 9na agencia de $iajes propone a sus clientes $iajes de una o dos semanas a <oma' Londres o 8=ne-. /l catlogo de la agencia contiene' para cada destino' el precio del transporte #con independencia de la duracin& > el precio de una semana de estancia )ue $ar:a seg=n el destino > el ni$el de comodidad elegidos #5otel' 5ostal o camping&. 1. /scribir el conjunto de declaraciones )ue describen este catlogo #los precios los pones t=&. ?. /%presar la relacin viaje(C, S, A, P) )ue se interpreta como el $iaje a la ciudad C de @ semanas con estancia en 1 > precio P. C. Completar con viaje_economico(C, S, A, P, P_max) )ue restringe el precio del $iaje por debajo de P!ma% pesetas. N781. 9tili-ar los predicados au%iliares siguientes0 multiplicar(P, N, Q): !umar(P, N, Q): menor(P, Q): P $ Q. Q i! P " N. Q i! P # N.

A. 9na agencia matrimonial tiene un fic5ero de candidatos al matrimonio organi-ado seg=n las declaraciones siguientes0 hombre(N, A, C, %). mujer(N, A, C, %). donde N es el nombre de un 5ombre o de una mujer' 1 su altura #alta' media' baja&' C es el color de su cabello > / la edad #jo$en' adulta' $ieja&. &u!ta(N, ', (, )). )ue indica )ue a la persona N le gusta el g,nero de m=sica B #clsica' pop' ja--&' el g,nero de literatura L #a$entura' ciencia!ficcin' polic:aca& > practica el deporte C #tenis' natacin' jogging&. bu!ca(N, A, C, %). )ue e%presa )ue la persona N busca una pareja de altura 1' con cabello color C > edad /. @e considera )ue dos personas 3 e 4 de se%os diferentes son adecuadas si 3 con$iene a 4 e 4 con$iene a 3. @e dice )ue 3 con$iene a 4 si 3 con$iene f:sicamente a 4 #la altura' color de cabello > edad de 4 son los )ue busca 3& > si' adems los gustos de 3 e 4 en m=sica' literatura > deporte coinciden. 1. /scribir el conjunto de declaraciones )ue representes el fic5ero de candidatos. ?. /scribir las reglas )ue definan conviene_*i!icamente(+, ,) > las )ue definan tienen_i&ual_&u!to(+, ,). 2

Lgica Computacional

Facultad de Informtica

C. /jecutar el programa para obtener las parejas ideales". 1N/37. Listado del programa restaurante!1.pl". - re!taurante_..pl - menu entrada(paella). entrada(&a/pacho). entrada(con!ome). carne(*ilete_de_cerdo). carne(pollo_a!ado). pe!cado(trucha). pe!cado(bacalao). po!tre(*lan). po!tre(nuece!_con_miel). po!tre(naranja). - 0alor calorico de una racion caloria!(paella, 122). caloria!(&a/pacho, .32). caloria!(con!ome, 422). caloria!(*ilete_de_cerdo, 522). caloria!(pollo_a!ado, 162). caloria!(trucha, .72). caloria!(bacalao, 422). caloria!(*lan, 122). caloria!(nuece!_con_miel, 322). caloria!(naranja, 32). - plato_principal(P) P e! un plato principal !i e! carne o pe!cado plato_principal(P): carne(P)8 pe!cado(P). - comida(%ntrada, Principal, Po!tre) comida(%ntrada, Principal, Po!tre): entrada(%ntrada), 3

Lgica Computacional

Facultad de Informtica

plato_principal(Principal), po!tre(Po!tre). - 0alor calorico de una comida valor(%ntrada, Principal, Po!tre, 0alor): caloria!(%ntrada, +), caloria!(Principal, ,), caloria!(Po!tre, 9), !umar(+, ,, 9, 0alor). - comida_e:uilibrada(%ntrada, Principal, Po!tre) comida_e:uilibrada(%ntrada, Principal, Po!tre): comida(%ntrada, Principal, Po!tre), valor(%ntrada, Principal, Po!tre, 0alor), menor(0alor, 622). - Concepto! auxiliare! !umar(+, ,, 9, ;e!): menor(+, ,): di*(+, ,): + $ ,. + <== ,. ;e! i! + # , # 9.

También podría gustarte