![]() |
|
![]() ![]() ![]() |
|
Straik |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 12.12.2006 Репутация: нет Всего: нет |
Есть функция, которая выводит список всех перестановок списка.
Нужно её переделать, чтобы исходные данные были массивом, а не списком. Поможете? А то с массивами беда (defun addel (el l) (cond ( (car l) (append (list (cons el (car l))) (addel el (cdr l)) ) ) (T NIL) ) ) (defun first_to_end (l lst) (cond ( (not (equal (car l) (car lst))) (append (cdr l) (list (car l))) ) (T NIL) ) ) (defun perest (l lst) (cond ( (equal l NIL) NIL ) ( (cdr l) (append (addel (car l) (perest (cdr l) (last (cdr l))) ) (perest (first_to_end l lst) lst ) ) ) (T (list l)) ) ) (defun per (l) (perest l (last l))) |
|||
|
||||
_sg |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 119 Регистрация: 16.5.2007 Репутация: 2 Всего: 2 |
вариант для списков:
Это сообщение отредактировал(а) _sg - 24.4.2014, 20:09 --------------------
vk.com/ansicommonlisp |
|||
|
||||
![]() ![]() ![]() |
Правила форума LISP | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | LISP | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |