Мова програмування Лiсп
в) дано: ((q w (r) t) y) побудувати: NIL
г) дано: ((q (w (e) r) t) y) побудувати: ((q) w (e) r)
д) дано: (q (w e)) побудувати: w, e
е) дано: (q w) побудувати: (((q w)))
4. Скласти вираз, який надає значення вхiдним даним та вираз, який будує заданий результат, використовуючи лише вихiднi символи.
а) дано: one=1, two=2, three=3зробити: one=2, two=3, three=1.
б) дано: Val(house)=sky, Val(sky)=houseзробити: Val(sky)=sky, Val(house)=house
в) дано: Val(lst)=(q)зробити: Val(lst)=(((q) q) q)
г) дано: Val(q)=w, Val(w)=sзробити: Val(q)=(s s)
5. Не використовуючи селекторнi функцiї:
а) дано: Val(a) = (q w e r t y) зробити: Val(a) = q
б) дано: Val(a) = (q w e r t y) зробити: Val(a) = (w)
6. Вказати значення всiх змiнних пiсля виконання наступних дiй:
(SET one 'two)
(SETQ two 'one)
(SET three two four 'one two three)
(PSETQ four one three 'four two three one four)
II Варiант завдань
1. Побудувати список, який задовiльняє наступним умовам:
а) голова та хвiст списку дорiвнює NIL.
б) серед елементiв списку є три списки, але жодного складного об'єкту.
в) серед елементiв списку немає атомiв, хвiст голови не є порожнiм списком, але хвiст хвоста є порожнiм списком.
г) усi елементи списку - атоми, при чому перший та третiй елементи - символи, другий та четвертий - не символи, а п'ятий - не символ i не число.
2. Що буде в результатi обчислення наступних виразiв:
а) (CADR '(nil (nil)))