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

SriedeExercciosdeCCT310

OBS:ORamosburroFDPnoobcopioutodososexerciciosdessalistadeumaoutralistade
umoutroprofessorquetbmtemunstutoriaisbonsqueajudamaresolvelos
link>http://www.inf.ufsc.br/~func/lisp3.html

Aserentreguedia16/04/2014,emduplas,emfolhadepapelalmaoecdigosimpressos.

1.ImplementeoalgoritmoA*pararesolveroproblemadas8rainhas.
public class NQueens {
private static int[] b = new int[8];
private static int s = 0;
static boolean unsafe(int y) {
int x = b[y];
for (int i = 1; i <= y; i++) {
int t = b[y - i];
if (t == x ||
t == x - i ||
t == x + i) {
return true;
}
}
return false;
}
public static void putboard() {
System.out.println("\n\nSolution " + (++s));
for (int y = 0; y < 8; y++) {
for (int x = 0; x < 8; x++) {
System.out.print((b[y] == x) ? "|Q" : "|_");
}
System.out.println("|");
}
}
public static void main(String[] args) {
int y = 0;
b[0] = -1;

while (y >= 0) {
do {
b[y]++;
} while ((b[y] < 8) && unsafe(y));
if (b[y] < 8) {
if (y < 7) {
b[++y] = -1;
} else {
putboard();
}
} else {
y--;
}
}
}
}

2.ExpresseatravsdefatoseregrasPrologasinformaescontidasnaseguintefrase:
Cassiabonita.Marcosricoebonito.Anaricaeforte.Fabianoforteebonito.Silvio
amveleforte.Todososhomensgostamdemulheresbonitas.Todososhomensricosso
felizes.Qualquerhomemquegostadeumamulherquegostadelefeliz.Qualquermulherque
gostadeumhomemquegostadelafeliz.Anagostadequalquerhomemquegostadela.
Cassiagostadequalquerhomemquegostadela,desdequeelesejarico,amveloubonito,e
forte.

domains
nome=symbol
carac=symbol

predicates
pessoa(nome,carac)
homem(nome)
mulher(nome)
gostade(nome,nome)

clauses
mulher(cassia).
mulher(ana).

homem(marcos).

homem(fabiano).
homem(silvio).

pessoa(marcos,rico).
pessoa(marcos,bonito).
pessoa(cassia,bonita).
pessoa(ana,rica).
pessoa(fabiano,forte).
pessoa(fabiano,bonito).
pessoa(silvio,amavel).
pessoa(silvio,forte).
pessoa(ana,forte).
pessoa(X,feliz):homem(X),pessoa(X,rico).

pessoa(X,feliz):homem(X),mulher(Y),gostade(X,Y),gostade(Y,X).
pessoa(Y,feliz):mulher(Y),homem(X),gostade(Y,X),gostade(X,Y).

gostade(ana,X):homem(X),gostade(X,ana).
gostade(X,Y):homem(X),mulher(Y),pessoa(Y,bonita).
gostade(cassia,X):homem(X),gostade(X,cassia),pessoa(X,rico),pessoa(X,amavel)
ORpessoa(X,bonito),pessoa(X,forte).

++++++++++++++++++++++++++++

3.Suponhaosseguintesfatos:
nota(joao,5.0).
nota(maria,6.0).
nota(joana,8.0).
nota(mariana,9.0).
nota(cleuza,8.5).
nota(jose,6.5).
nota(jaoquim,4.5).
nota(mara,4.0).
nota(mary,10.0).
Considerandoque:
Notade7.010.0=Aprovado.
Notade5.06.9=Recuperao.
Notade0.04.9=Reprovado.
Escrevaumaregraparaidentificarasituaodeumdeterminadoaluno.
**CODIGODA3***********************************************
domains
name=symbol

ponto=real

predicates
nota(name,ponto)
verifica(name)

clauses
nota(joao,5.0).
nota(maria,6.0).
nota(joana,8.0).
nota(mariana,9.0).
nota(cleuza,8.5).
nota(jose,6.5).
nota(jaoquim,4.5).
nota(mara,4.0).
nota(mary,10.0).

verifica(X):
nota(X,Y),Y>=0.0,Y<=4.9,
write("Reprovado").
verifica(X):
nota(X,Y),Y>=5.0,Y<=6.9,
write("Recuperacao").
verifica(X):
nota(X,Y),Y>=7.0,Y<=10.0,
write("Aprovado").
*************************************************************

4.EscrevaregrasgenricasemPrologquepossamresponderasseguintesperguntas:
Quemdirigiuofilme"Oreileo"?
Quaissoosfilmesdesuspense?
QuaisosfilmesdirigidosporHectorBabenco?
EmqueanofoilanadoofilmeCrepusculo?
Quaisosfilmescomduraoinferiora100min?
Quaisosfilmeslanadosentre2000e2015?

*****inventareiregras***************
domains
nome,diretor,categ=symbol
ano,duracao=integer

predicates

diretor(nome,diretor)
dura(nome,duracao)
lanca(nome,ano)
categoria(nome,categ)
clauses

diretor("Oreileao","Juquinha").
diretor("Oiluminado","Zezinho").

diretor("Ababadoboi","HectorBabenco").
diretor("Avaquinhamumu","HectorBabenco").
diretor("Crepusculo","Tonico").
diretor("Umaaventuradapesada","JoaoSilvaSauro").

dura("Oreileao",120).
dura("Oiluminado",114).
dura("Ababadoboi",99).
dura("Avaquinhamumu",85).
dura("Crepusculo",101).
dura("Umaaventuradapesada",100).

lanca("Oreileao",1994).
lanca("Oiluminado",2005).
lanca("Ababadoboi",2008).
lanca("Avaquinhamumu",2014).
lanca("Crepusculo",2006).
lanca("Umaaventuradapesada",2000).

categoria("Oreileao",infantil).
categoria("Oiluminado",suspense).
categoria("Ababadoboi",juvenil).
categoria("Avaquinhamumu",juvenil).
categoria("Crepusculo",aventura).
categoria("Umaaventuradapesada",gordura).

5.Usandoasregrascriadasanteriormenteconstruaopredicadoclssico,queretornao
ttulodosfilmeslanadosantesde1980.

domains
nome,diretor,categ=symbol
ano,duracao=integer

predicates

diretor(nome,diretor)
dura(nome,duracao)
lanca(nome,ano)
categoria(nome,categ)
classico(nome)
clauses

diretor("Oreileao","Juquinha").
diretor("Oiluminado","Zezinho").

diretor("Ababadoboi","HectorBabenco").
diretor("Avaquinhamumu","HectorBabenco").
diretor("Crepusculo","Tonico").
diretor("Umaaventuradapesada","JoaoSilvaSauro").
diretor("Primeiraveznopassado","Ispilber").

dura("Oreileao",120).
dura("Oiluminado",114).
dura("Ababadoboi",99).
dura("Avaquinhamumu",85).
dura("Crepusculo",101).
dura("Umaaventuradapesada",100).
dura("Primeiraveznopassado",125).

lanca("Oreileao",1994).
lanca("Oiluminado",2005).
lanca("Ababadoboi",2008).
lanca("Avaquinhamumu",2014).
lanca("Crepusculo",2006).
lanca("Umaaventuradapesada",2000).
lanca("Primeiraveznopassado",1977).


categoria("Oreileao",infantil).
categoria("Oiluminado",suspense).
categoria("Ababadoboi",juvenil).
categoria("Avaquinhamumu",juvenil).
categoria("Crepusculo",aventura).
categoria("Umaaventuradapesada",gordura).
categoria("Primeiraveznopassado",aventura).

classico(X):lanca(X,Y),Y<1980.

6.Usandoasregrascriadasanteriormenteconstruaopredicadognero,queretornao
ttulodosfilmesdeumgneroespecfico.

domains
nome,diretor,categ=symbol
ano,duracao=integer

predicates

diretor(nome,diretor)
dura(nome,duracao)
lanca(nome,ano)
categoria(nome,categ)
classico(nome)
genero(nome,categ)
clauses

diretor("Oreileao","Juquinha").
diretor("Oiluminado","Zezinho").

diretor("Ababadoboi","HectorBabenco").
diretor("Avaquinhamumu","HectorBabenco").
diretor("Crepusculo","Tonico").
diretor("Umaaventuradapesada","JoaoSilvaSauro").
diretor("Primeiraveznopassado","Ispilber").

dura("Oreileao",120).
dura("Oiluminado",114).
dura("Ababadoboi",99).
dura("Avaquinhamumu",85).
dura("Crepusculo",101).

dura("Umaaventuradapesada",100).
dura("Primeiraveznopassado",125).

lanca("Oreileao",1994).
lanca("Oiluminado",2005).
lanca("Ababadoboi",2008).
lanca("Avaquinhamumu",2014).
lanca("Crepusculo",2006).
lanca("Umaaventuradapesada",2000).
lanca("Primeiraveznopassado",1977).

categoria("Oreileao",infantil).
categoria("Oiluminado",suspense).
categoria("Ababadoboi",juvenil).
categoria("Avaquinhamumu",juvenil).
categoria("Crepusculo",aventura).
categoria("Umaaventuradapesada",gordura).
categoria("Primeiraveznopassado",aventura).

classico(X):lanca(X,Y),Y<1980.

genero(X,Y):categoria(X,Y).

7.Usandoospredicadosclssicoegnerofaaumaconsultapararecuperaros
ttulosdefilmesclssicosdesuspense.

domains
nome,diretor,categ=symbol
ano,duracao=integer

predicates

diretor(nome,diretor)
dura(nome,duracao)
lanca(nome,ano)
categoria(nome,categ)
classico(nome)
genero(nome,categ)
clauses


diretor("Oreileao","Juquinha").
diretor("Oiluminado","Zezinho").

diretor("Ababadoboi","HectorBabenco").
diretor("Avaquinhamumu","HectorBabenco").
diretor("Crepusculo","Tonico").
diretor("Umaaventuradapesada","JoaoSilvaSauro").
diretor("Primeiraveznopassado","Ispilber").
diretor("Amigodesoculto","Xuasnega").

dura("Oreileao",120).
dura("Oiluminado",114).
dura("Ababadoboi",99).
dura("Avaquinhamumu",85).
dura("Crepusculo",101).
dura("Umaaventuradapesada",100).
dura("Primeiraveznopassado",125).
dura("Amigodesoculto",140).

lanca("Oreileao",1994).
lanca("Oiluminado",2005).
lanca("Ababadoboi",2008).
lanca("Avaquinhamumu",2014).
lanca("Crepusculo",2006).
lanca("Umaaventuradapesada",2000).
lanca("Primeiraveznopassado",1977).
lanca("Amigodesoculto",1960).

categoria("Oreileao",infantil).
categoria("Oiluminado",suspense).
categoria("Ababadoboi",juvenil).
categoria("Avaquinhamumu",juvenil).
categoria("Crepusculo",aventura).
categoria("Umaaventuradapesada",gordura).
categoria("Primeiraveznopassado",aventura).
categoria("Amigodesoculto",suspense).

classico(X):categoria(X,suspense),lanca(X,Y),Y<1980.

genero(X,Y):categoria(X,Y).

8.Desenheasrepresentaesinternasdedadosparaaslistasseguintes:
(A173)

((A5C)%)

((A5C)(%))

(NIL6A)
((AB))

(*(+15(64))3)

QualoCARdecadaumadaslistasdoexerccioanterior?
A
(A5C)
(A5C)
NIL
(AB)
*
QualoCDRdecadaumadaslistasdoexerccioanterior?
(173)
%
(%)
(6A)
NIL
NIL

9.EscrevaumadeclaraoemLISPparaexecutarcadaumadasoperaesabaixo:
Lerdoisnmeros,imprimirsuasomaeacrescentar3aoresultado.Assim5e11devem
produzir16e19natela.
(defunler(xy)
(print(+xy))
(+xy3)))
Lerumnicovaloreimprimlocomoumalista.Assimovalor6deveproduzir(6).
(defunlista(x)
(listx))

Lerdoisvaloreseimprimirsuasomacomoumalista.Destemodo6e7devemproduzira
lista(13).
(defunslista(xy)
(list(+xy)))

Lertrsnmeroseimprimloscomoumalista.

(defunlista3(xyz)
(listxyz))

Lertrsnmeroseimprimirasomadosdoisprimeiroseoprodutodestapeloterceirocomo
umalista.
(defunli(xyz)
(setqx(list(+xy)(*(+xy)z)))

//AGORAESTCURETO

10.Escrevaumafunoqueleiadousurioumalistadeprodutoseseusrespectivospreos,
colocandoosemumalistaorganizadaporparesprodutopreo.Aentradadedadosfinalizada
digitandoseapalavrafimaoinvsdeumnomedeproduto.
Utilizeocomandoloopparaimplementarolaodeleituraedefinaumavarivelglobalondea
listaficararmazenadaaofimdaleitura.
Osparesprodutopreovocpodeorganizartantocomoumcons,umasublistaouuma
estruturacomcamposprodutoepreo.Alisttemavantagemdeserextremamenteflexvel:
vocpodeextenderasuaestruturadedadossemnecessitarentrarcomosdadosdenovo.O
consaformamaiseconmicaemtermosdememria.Aestruturapermiteumamodelagem
elegante.Ficaaseucritrio.
//Tentativafromhellderesolvera10//
>Tdandoerroeeunotenhoamenorideiadecomofazessaporra

(loopwithx='(Lista)
do(
progn(print"Entrecomonomedoprodutoeseupreco(Parasairentrecomfimfim):")
(setfproduto(read))(setfpreco(read))
)
(setqx(cons(listx)(consprodutopreco)))
(printx)
until(equalproduto'fim)
)

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