Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > LISP > структуроразрушающие ф-и


Автор: rocko 19.12.2010, 15:37
Здравствуйте, помогите пожалуйста с задачей:
Задача должна выполняться при помощи структуроразрушающих функций rplacd, rplaca
Под именем Х задан список ЛИСПа ( a b c d ). Требуется получить список (d c b a), не расходуя при этом дополнительно списковые ячейки памяти. При перестроении списка имена переменных являющихся его элементами не упоминать.

Как не пробую все время пропадает какой-то из элементов списка, помогите!


Автор: rocko 19.12.2010, 21:05
(setq l '(a b c d))
(rplacd  (cdddr l)(car l))
(rplaca  l(cdddr l))
(rplacd l (cdr l) )
(rplaca  l(caar l))

Добавлено через 42 секунды
вот что вышло....можно както после точки тот элемент вытащить?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)