Prova prologhaskell

483 palavras 2 páginas
http://www­usr.inf.ufsm.br/~andrea/elc117/Programaca oHaskell.pdf Prova Data: 24/11/2011
Questão 01. amava(joao,teresa). amava(teresa,raimundo). amava(raimundo,maria). amava(maria,joaquim). amava(joaquim,lili). amava(lili,ninguem). destino(joao,foi,eua). destino(teresa,foi,convento). destino(raimundo,morreu,desastre). destino(maria,ficou,tia). destino(joaquim,morreu,suicidio). destino(lili,casou,jpintofernandes). naoentrouhistoria(jpintofernandes). amavaalguemconvento(X,Y):­ amava(X,Y), destino(Y,foi,convento).

Questão 02. imc(X,Y,Z):­ A = X/(Y*Y), A=20, A =25, A =30, A35,Z=ob3.

Questão 03.
*Currying é o processo de transformação de uma função que recebe vários argumentos em uma função que recebe apenas um único argumento e retorna uma outra função, se os argumentos ainda são necessários. *Em Haskell uma função de dois ou mais argumentos, pode aceitá­los um de cada vez. Isto se chama currying.

Questão 04.
Versão que retorna o imc imc :: Float ­> Float ­> String imc x y | (x / (y*y)) = 20 && (x / (y*y)) Float ­> Float imc x y = (x / (y*y))

Prova Data: 05/06/2012
Questao 01. genitor(jose,ana). genitor(jose,joao). genitor(maria,ana). genitor(maria,joao). genitor(ana,helena). genitor(ana,joana). genitor(joao,mario). genitor(helena,carlos). genitor(mario,carlos). sexo(jose,masculino). sexo(joao,masculino). sexo(mario,masculino). sexo(carlos,masculino). sexo(ana,feminino). sexo(maria,feminino). sexo(helena,feminino). sexo(joana,feminino). irma(X,Y):­ sexo(X,feminino), genitor(A,X), genitor(A,Y), X \= Y. irmao(X,Y):­ sexo(X,masculino), genitor(A,X), genitor(A,Y), X \= Y. descendente(X,Y):­ genitor(Y,X). descendente(X,Y):­ progenitor(Y,X). mae(X,Y):­ sexo(X,feminino), genitor(X,Y). pai(X,Y):­ sexo(X,masculino), genitor(X,Y). tio(X,Y):­ sexo(X,masculino), irmao(X,A), genitor(A,Y). tio(X,Y):­ sexo(X,masculino), irma(X,A), genitor(A,Y). primo(X,Y):­ sexo(X,masculino), irmao(A,B), genitor(A,X), genitor(B,Y). primo(X,Y):­ sexo(X,masculino), irma(A,B),

Relacionados