Está en la página 1de 2

LISTA DE EXERCCIOS no11 PROLOG

ATIVIDADE 1: considere as seguintes premissas:


Peixe um tipo de animal, pssaro outro tipo e mamfero um terceiro tipo.
Os peixes podem nadar, os pssaros podem voar e os mamferos podem andar. Se por um lado os peixes e os
pssaros pem ovos, os mamferos no pem.
So espcies de peixes: cirurgio patela e tubaro. Embora tubares sejam peixes, eles no pem ovos, seus
filhotes nascem j formados. Peixe palhao um tipo de peixe ornamental.
O canrio um pssaro pequeno e a avestruz um pssaro grande que no voa, apenas anda.
So espcies de mamferos: gatos, ratos, vacas e morcegos. Nem todos os mamferos andam para se mover, como
os morcegos, que voam.
passo 1: obtenha no AVA (ava.furb.br/unidade 04) a base de fatos e regras que representam as premissas acima
(bichos.pl). Analise a base e, se necessrio, complemente com as informaes faltantes para que todas as premissas
estejam representadas. S podem ser usados os fatos e as regras j definidos.
passo 2: carregue a base no SWI-PROLOG.
passo 3: utilizando apenas as regras j definidas (no podem ser usados os fatos), escreva consultas Prolog para
responder s seguintes perguntas:
pergunta

consulta em Prolog

Piupiu e Xica voam?


Drcula voa?
Nemo pe ovos?
Batatinha nada?
Pinky e Sara Lee andam?
passo 4: utilizando apenas as regras j definidas (no podem ser usados os fatos), edite o arquivo bichos.pl e inclua
regras para responder s seguintes perguntas, como no exemplo abaixo:
pergunta

p1

Qual o nome dos peixes?

p2

Qual o nome dos pssaros?

p3

Qual o nome dos mamferos?

p4

Qual o nome dos animais que pem ovos?

p5

Qual o nome dos animais que andam?

p6

Qual o nome dos animais que nadam ou voam?

p7

Qual o nome dos animais que andam, mas no pem


ovos?

p8

Qual o nome dos mamferos que voam?

p9

Qual o nome dos pssaros que andam?

p10 Qual o nome dos peixes que no pem ovos?


passo 5: edite o arquivo bichos.pl e inclua os fatos abaixo:
humano(
humano(
humano(
humano(

grug ).
ugga ).
guy ).
eap ).

regra
p1 :- peixe(X),
write(X), write(' um peixe'), nl, fail.

ATIVIDADE 2: considere a cadeia alimentar abaixo:


humano

vaca .

morcego

avestruz .

tubaro .

peixe
.
pequeno .

pssaro
pequeno

rato .

gato

consumidor

produtor

passo 1: edite o arquivo bichos.pl e inclua uma regra para formalizar a informao contida na cadeia alimentar acima,
utilizando consome(X,Y) X consome Y. Por exemplo, ao consultar consome(grug, tutubarao), a resposta dever ser
true, pois grug consumidor ( humano) e tutubarao produtor ( tubaro). Cada vez que a base de dados for
alterada, necessrio carreg-la novamente.
passo 2: verifique se a regra est correta, testando-a.
passo 3: edite o arquivo bichos.pl e inclua regras para:
a) consumidor(X) X consome algum ser vivo.
b) produtor(X) X consumido por algum ser vivo e no consome ningum.
c) topo (X) X est no topo da cadeia alimentar se X consome algum ser vivo e no consumido por ningum.
Observa-se que as regras devem funcionar para qualquer alterao na cadeia alimentar, isto , por exemplo, se rato
passar a consumir pssaro pequeno, ao realizar a consulta consumidor(jerry), a resposta dever ser true.
passo 4: verifique se as regras esto corretas, testando-as.
passo 5: edite o arquivo bichos.pl e efetue as alteraes necessrias para formalizar a cadeia alimentar abaixo.
humano

vaca .

capim .

tubaro .

morcego

avestruz .
peixe
.
pequeno .

rato .

pssaro
pequeno

algas .
gato

consumidor

So tipos de algas: chrysophyta, euglenophyta. So tipos de capim: capim-gordura, capim-elefante.


passo 6: edite o arquivo bichos.pl e inclua regras para:
a) predador(X) X consome algum animal.
b) presa(X) X consumido por um predador.
passo 7: verifique se as regras esto corretas, testando-as.

produtor

También podría gustarte