Академический Документы
Профессиональный Документы
Культура Документы
cor(céu, cinzento).
cor(céu, preto).
cor(mar, azul).
cor(mar, verde).
cor(mar, cinzento).
cor(via, cinzenta).
cor(via, castanha).
cor(via, preta).
transporte(céu,avião).
transporte(céu,helicóptero).
transporte(céu,foguete).
transporte(mar,navio).
transporte(mar,lancha).
transporte(via,carro).
transporte(via,camião).
transporte(via,mota).
transporte(via,autocarro).
nega(X)):(call(X),!,fail);true.
nega(X)):(call(X),!,fail).
nega(X)):-true.
?- nega(cor(céu,azul)).
no
?- nega(transporte(mar,carro)).
yes
se_entao_senao(X):-call(X),(write(ok),nl,write('...'),nl);(write(falhou),nl,writ
e('...'),nl).
?- se_entao_senao(cor(céu,azul)).
ok
...
yes
| ?- se_entao_senao(cor(ceu,azul)).
falhou
...
yes
se_entao(X,Y):-call(X),!,call(Y);true.
se_entao(cor(ceu,azul),(write('Entao'))).
yes
| ?- se_entao(cor(céu,azul),(write('Entao'))).
Entao
yes
| ?-
questao(Valor):-write('Qual o atributo (cor ou transporte)='),read(A),
write('Qual o objecto (céu,mar,via)='),read(O),
repeat,
write('Qual o valor '),write(A),write(' do '),write(O
),write(' ? '),read(Valor),P=..[A,O,Valor],call(P).
questao(X).
Qual o atributo cor ou transporte ? |: cor.
Qual o objecto céu,mar,via ?|: mar.
Qual o valor cor do mar ? |: branco.
Qual o valor cor do mar ? |: verde.
X = verde
| ?- questao(Valor).
Qual o atributo cor ou transporte ? |: cor
.
Qual o objecto céu,mar,via ?|: mar.
Qual o valor cor do mar ? |: preto.
Qual o valor cor do mar ? |: aa.
Qual o valor cor do mar ? |: verde.
Valor = verde