Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Exercicios Resolvidos Prolog, Exercícios de Informática

Exercicios resolvidos prolog sobre manipulaçao de listas

Tipologia: Exercícios

2016

Compartilhado em 15/06/2016

gu-de-aguiar-2
gu-de-aguiar-2 🇧🇷

4.9

(25)

20 documentos

1 / 2

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
PROJETO 5
Exercício 1) Escreva um programa denominado limpa (X, L1, L2) que produz
uma lista L2 como sendo a lista L1 sem nenhuma ocorrência do termo X.
Exemplo:
Limpa(2,[2,3,4],L2).
L2 = [3,4].
Exercício 2) Escreva um programa que inverta uma lista de elementos.
Inverter([2,3,4],X).
X = [4,3,2].
Exercício 3) A palindrome is a word or phrase that spells the same forwards
and backwards. For example, ‘rotator’, ‘eve’, and ‘nurses run’ are all
palindromes. Write a predicatepalindrome(List) , which checks whether List is a
palindrome. For example, to the queries
?- palindrome([r,o,t,a,t,o,r]).
and
?- palindrome([n,u,r,s,e,s,r,u,n]).
Prolog should respond yes, but to the query
?- palindrome([n,o,t,h,i,s]).
it should respond no.
pf2

Pré-visualização parcial do texto

Baixe Exercicios Resolvidos Prolog e outras Exercícios em PDF para Informática, somente na Docsity!

PROJETO 5

Exercício 1) Escreva um programa denominado limpa (X, L1, L2) que produz uma lista L2 como sendo a lista L1 sem nenhuma ocorrência do termo X. Exemplo: Limpa(2,[2,3,4],L2). L2 = [3,4]. Exercício 2) Escreva um programa que inverta uma lista de elementos. Inverter([2,3,4],X). X = [4,3,2]. Exercício 3) A palindrome is a word or phrase that spells the same forwards and backwards. For example, ‘rotator’, ‘eve’, and ‘nurses run’ are all palindromes. Write a predicatepalindrome(List) , which checks whether List is a palindrome. For example, to the queries ?- palindrome([r,o,t,a,t,o,r]). and ?- palindrome([n,u,r,s,e,s,r,u,n]). Prolog should respond yes, but to the query ?- palindrome([n,o,t,h,i,s]). it should respond no.

Exercicio 1 limpa(X, [], []). limpa(X, [X | T], T1) :- limpa(X, T, T1). limpa(X, [H | T], [H | R]) :- limpa(X, T, R). Exercicio 2 inverter([],[]). Inverter([],[]). inverter(X, Y) :- aux([], X, Y). aux(L, [], L). aux(L, [X | Y], Z) :- aux([X | L], Y, Z). Exercicio 3 palindromo(L):-inverter(L,L).