Buscar

Lista de Exercícios de Prolog

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Lista de Exercícios de Prolog
Inteligência Artificial (IAAE9)
9º Semestre de Engenharia de Controle e Automação
1. Existem alguns registros antigos da família Pinheiro que indicam que o casal José e
Maria criou dois filhos, o João e a Ana; e que a Ana teve duas filhas, a Helena e a
Joana. Além disso, o Mário é filho do João, e o Carlos nasceu da relação entre a
Helena e o Mário.
a. Utilizando o predicado progenitor(X,Y) (ou seja, X é progenitor de Y),
represente em Prolog todos os progenitores da família Pinheiro.
b. Represente em Prolog as relações: sexo (masculino ou feminino), irmã,
irmão, descendente, mãe, pai, avô, tio, primo (considerem primo e prima
como “primo”).
c. Formule em Prolog as seguintes questões:
i. O João é filho do José?
ii. Quem são os filhos da Maria?
iii. Quem são os primos do Mário?
iv. Quantos sobrinhos/sobrinhas existem na família Pinheiro?
v. Quem são os ascendentes do Carlos?
vi. A Helena tem irmãos? E irmãs?
2. Considere os fatos abaixo e crie uma regra podeVender onde o primeiro argumento
é a pessoa, o segundo o carro e o terceiro é o ano atual, onde a pessoa só pode
vender o carro se o carro for comprado por ela nos últimos 10 anos e se seu valor
for menor do que R$100.000,00.
comprou(joao, honda).
ano(honda, 1997).
comprou(joao, uno).
ano(uno, 1998).
valor(honda, 120000).
valor(uno, 70000).
3. Traduza os seguintes fatos para o Prolog:
● Tweety é um pássaro.
● Goldie é um peixe.
● Molie é uma minhoca.
● Pássaros gostam de minhocas.
● Gatos gostam de peixes.
● Gatos gostam de pássaros.
● Amigos gostam uns dos outros.
● O meu gato é meu amigo.
● O meu gato come tudo o que gosta.
● O meu gato chama-se Silvester.
a. Use Prolog para determinar tudo o que o Silvester come?
b. A resposta é razoável ? Se não for, verifique se o problema está na
especificação original ou na sua tradução para Prolog, corrija e execute
novamente.
LEMBRETE:
Operadores aritméticos:
+, -, *, /, mod, is.
Operadores relacionais:
=, \=, <, >, =<, >=
4. Escreva regras no Prolog que, dado um número N:
a. Calcule o dobro de N;
b. Diga se N é positivo;
c. Diga se N é par ou ímpar;
d. Calcule N! (de forma recursiva).
5. Este exercício pode ser feito individualmente, dupla ou trio e na próxima aula, o
exemplo deverá ser explicado durante a aula.
a. Encontre ou crie um exemplo simples que utiliza a estrutura de lista em
Prolog.
b. Encontre ou crie um exemplo simples que utiliza estrutura de repetição em
Prolog.
RECADINHO: Pessoal, aproveitem o tempo de aula para trabalhar na lista. Utilizem os
slides da aula passada e exemplos na internet para auxiliá-los. O objetivo é que vocês
entendam o básico desse novo paradigma de programação, o paradigma lógico, e se
familiarizem um pouco com essa forma diferente de lógica e de programação, muito
utilizada em Sistemas Especialistas.

Continue navegando