MC600 - Segundo semestre de 1997 - LISTA 2 ------------------------------------------ 1. Calcule o valor das seguintes S-expressoes: a. (car '((a b c d))) b. (cdr '((a b c d))) c. (car (cdr (car (cdr '((((a b) (c d)) (e f)) (g h)))))) d. (cons (car '(a b f)) (cons (cons 'c '(x)) nil)) 2. Considere uma S-expressao qualquer X. Para representa-la graficamente precisamos de um certo numero C de caixas. Para representa-la textualmente precisamos de um certo numero A de atomos, um certo numero P de pontos, e um certo numero PP de pares de parentesis. Qual e' a relacao precisa entre os numeros C, A, P e PP? 3. Escreva em LISP: a. 1 + 8 * 5 b. (13 * (4 / 5) - 81) * 47 c. 2 - 2 - 2 - 2 4. O que faz a seguinte funcao? (defun xxx (x) (+ 1 x)) 5. Suponha que tenha sido feita a definicao de funcao acima. Qual o valor das seguintes expressoes? a. (xxx 2) b. (xxx (+ (xxx 5) 3)) c. (+ 4 xxx) 6. Suponha que alem da definicao de funcao acima facamos ainda (setf xxx 5) Qual o valor da expressao abaixo? (xxx xxx)