Нижче наведено відповіді на завдання із розділу Мова програмування Лісп/Об'єкти Ліспу.
Побудувати список, який задовільняє наступним умовам: ((q w e)(r t y u)) ((q w e)) ((q w) e (r t) (y)) ((q w e)) ((NIL)) ( (e (p)) (2 9 (9)) ) Що буде в результаті обчислення наступних виразів: (NIL) (CONS ‘(q w) NIL) = ((q w)) (EQL NIL NIL) = Т (ATOM (NIL)) = NIL (EQL NIL ‘NIL) = T (EQL NIL (NIL)) = NIL 3 (CONS (CAR ‘(A B C)) (CDR ‘(X Y Z))) (CADDR (CADDR ‘((one 1) (two 2 3) (three 4 5 6)))) (CDDR ‘((q w (r) t) y)) (SETQ t ‘((q (w (e) r) t) y)) (CONS (CONS (CAAR t) NIL) (CADAR t)) (SETQ a ‘(q (w e))) (CAADR a) -> w, (CADADR a) -> e (cons (cons ‘(q w) nil) nil)
4. a) $ (SETQ one 1 two 2 three 3)в) (CONS (CONS lst lst) lst)
$ (PSETQ one two two three three one)
б) $ (PSETQ house sky sky house)г) (SETQ q (CONS w (CONS w)))
$ (PSETQ house sky sky house)
5. а) $ (SETQ a ‘(q w e r t y))б) $ (POP a) Val(a) = (w e r t y)
$ (SETQ a (POP a)) $ (SETQ a (POP a)) Val(a) = w
$ (SETQ a (CONS aNIL))
6. Val(one) = two
Val(one) = two, Val(two) = one
Val(one) = two, Val(two) = one, Val(three) = one, Val(four) = four
Val(one) = four, Val(two) = one, Val(three) = four, Val(four) = two
II Варіант завдань
1. а) (NIL) б) (()()()) в) ((e к) (e)) г) (q 3 r 3 ())
2. а) (NIL) б) (NIL NIL) в) ((q w) e r) г) T д) NIL (порівняння списків а не атомів!) е) ((CONS (QUOTE (Q)) (QUOTE (W))))
3. а)onetwothree б)abc
twothreetwo(a b)(b c)(c a)
twotwotwo(a b)(b c)((a b))
twotwotwobcNIL