Buscar

Lista_de_Exercícios (PROLOG)

Prévia do material em texto

Lista de Exercícios
pam
tomConsidere a seguinte árvore e faça o que se pede
 
liz
bob	
ana
pat
jim
Transforme a árvore para Prolog.
Assumindo a relação genitor qual as respostas para as seguntes perguntas Prolog:
?- genitor(jim,X).
?- genitor(X,jim).
?- genitor(pam,X),genitor(X,pat).
?- genitor(pam,X),genitor(X,Y),pais(Y,jim).
Formule as seguintes perguntas para perguntas Prolog:
Quem são os pais de Pat?
A Liz tem filhos?
Quem são os avós de Pat?
Declare os fatos de sexo, de forma diferente vista em sala de aula. 
Transforme as seguintes sentenças para Prolog:
a) Enciclopédias e dicionários são livros.
b) O Aurélio é um dicionário.
c) A Britânica é uma enciclopédia.
d) Cada livro tem uma cor.
e) Vermelho e verde são cores.
f) Todos os dicionários são vermelhos.
g) As enciclopédias nunca são vermelhas.
h) A Britânica é verde.
i) Cada livro é uma enciclopédia ou um dicionário, mas não ambos.
Elabore um programa que é uma dvdteca e diga que filmes são indicados para cada pessoa.
Faça um programa Prolog que classifique alguns animais segundo 5 características em cada tipo (mamífero, aves,repteis,anfíbios,peixes).
 Faça um programa Prolog que venda carros a pessoas dependendo do ano, preço e marca.
 
RESPOSTAS
1) a. genitor(pam,bob).
	genitor(tom,bob).
	genitor(tom,liz).
	genitor(bob,ana).
	genitor(bob,pat).
	genitor( pat,jim).
b.	 i. false
	ii. X = pat.
	iii. X = bob.
	iv. X = bob Y =pat.
c.	i. genitor(X,pat).
	ii. genitor(Liz,_) ou genitor(liz,X) – Note que o undercase(_) representa alguma variável que simplesmente não interessa para o programador.
	iii. forma da sala – homem(bob) ou mulher(ana).
	 forma nova – sexo(bob,homem) ou sexo(ana,mulher).
2)	livro(X):- enciclopedia(X);dicionario(X).
	dicionario(aurelio).
	enciclopedia(britanica).
	tem_cor(X,Y):- livro(X), cor(Y).
	cor(verde).
	cor(vermelho).
	que_cor_de_quem(X,Y):-livro(X),cor(Y),((X=='aurelio',Y=='vermelho');(X=='britanica',Y=='verde')).
3) 	gosta(bob,comedia).
	gosta(ana,romance).
	gosta(jim,terror).
	gosta(pam,suspense).
	gosta(pat,comedia).
	filmes(osnormais,comedia).
	filmes(osnormais2,comedia).
	filmes(donjuan,romance).
	filmes(ochamado,terror).
	filmes(chinatown,suspense).
	indicacao(X,Y):- gosta(X,Z) , filmes(Y,Z).
4) %animal(nome,n patas,bolsa aminiotica, n fases,termia, possue mama)% 
animal(salmao,0,nao,1,ectotermico,nao).
animal(sapo,4,sim,2,ectotermico,nao).
animal(jiboia,0,sim,1,ectotermico,nao).
animal(galinha,2,sim,1,endotermico,nao).
animal(babuino,4,sim,1,endotermico,sim).
mamifero(X):-animal(X,Y,F,Z,W,Q),Y>=2,F=='sim',Z==1,W=='endotermico',Q=='sim'.
ave(X):- animal(X,Y,F,Z,W,Q),Y>=2,F=='sim',Z==1,W=='endotermico',Q=='nao'.
reptil(X):- animal(X,Y,F,Z,W,Q),Y>=0,F=='sim',Z==1,W=='ectotermico',Q=='nao'.
anfibio(X):- animal(X,Y,F,Z,W,Q), Y>=2,F=='sim',Z>1, W=='ectotermico', Q=='nao'.
peixe(X):- animal(X,Y,F,Z,W,Q), Y==0,F=='nao',Z==1, W=='ectotermico', Q=='nao'.
classificacao(Y):-(mamifero(Y),write('mamifero'));(ave(Y),write('ave'));(anfibio(Y),write('anfibio'));(reptil(Y),write('reptil'));(peixe(Y), write('peixe')).
5)
%Carro tem nome, ano, preço
carro(palio,1999,10000).
carro(civic,2009,70000).
carro(hilux,2007,90000).
carro(fusca,1977,5000).
quer(joao,palio).
quer(joao,civic).
quer(joao,hilux).
quer(joao,fusca).
quer(ana,palio).
quer(ana,hilux).
quer(igor,hilux).
quer(bob,civic).
pode(joao,50000).
pode(ana,100000).
pode(igor,100).
pode(bob,80000).
quem_compra_carro(X,Y):-quer(X,Y),carro(Y,_,Z),pode(X,W),W>=Z.

Outros materiais