Вы находитесь на странице: 1из 1

LISTA DE EXERCCIOS no9 PROLOG

ATIVIDADE 1: definir regras para o organograma abaixo, com cargos e chefes:


Santiago
diretor / supervisor

Ana

Daniel

supervisor

Ivone

Jos

Isabel

Lus

Tomas

supervisor

Laura

supervisor

Oscar

Rogrio

Snia

engenheiro
tcnico

passo 1: crie o arquivo organograma.pl e inclua fatos para formalizar as informaes contidas no organograma,
utilizando: cargo(X,Y) Y ocupa o cargo X; supervisor(X,Y) X supervisor direto de Y; diretor(X) X diretor. Por
exemplo: cargo(tcnico, ivone). define que Ivone ocupa o cargo de tcnico.
passo 2: qual o resultado das seguintes consultas:
consulta
?- cargo(X, ana).

resultados

o que significa?

?- cargo(tcnico, X).
?- cargo(engenheiro, X), write(X), nl, fail.

passo 3: escreva consultas para:


o que?

consulta

saber de quem Ana supervisor


saber se Lus supervisor
saber quais so os supervisores de Laura
saber quais so os supervisores
saber quem o diretor

passo 4: edite o arquivo organograma.pl e inclua regras para definir a relao chefiado_por(X,Y) X chefiado por Y,
se Y supervisor (direto ou indireto) de X. Por exemplo, ao consultar se Jos chefiado por Ana, a resposta deve ser
verdadeiro, assim como ao consultar se Jos chefiado por Santiago. Cada vez que a base de dados for alterada,
necessrio carreg-la novamente.
passo 5: verifique se as regras esto corretas executando as seguintes consultas:
consulta
?- chefiado_por(jos, ana).

resultados

o que significa?

?- chefiado_por(jos, santiago).

passo 6: escreva consultas para:


o que?

consulta

saber quem chefiado por Tomas


saber por quem Isabel chefiada
saber por quem Oscar chefiado
saber quem chefiado por Santiago

passo 7: edite o arquivo organograma.pl e inclua regras para definir a relao chefiar(X,Y) X pode ser chefe de Y, se X
for tcnico, X for supervisor e Y for tcnico; se X for engenheiro e Y for tcnico, se X for engenheiro e Y for engenheiro.
Cada vez que a base de dados for alterada, necessrio carreg-la novamente. Verifique se as regras esto corretas,
efetuando consultas para determinar quem pode assumir cargo de chefia.
passo 8: edite o arquivo organograma.pl e inclua regras para definir a relao dirigir(X) X pode ser diretor, se X for
engenheiro e X for supervisor. Cada vez que a base de dados for alterada, necessrio carreg-la novamente. Verifique
se as regras esto corretas, efetuando consultas para determinar quem pode assumir cargo de diretor.

Вам также может понравиться