Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2011, 08:03   #1
mashik2503
Новичок
Джуниор
 
Регистрация: 17.05.2011
Сообщений: 1
По умолчанию LISP.разделить список на 2, в первый поместить четные элементы исходного списка, во второй - нечетные

на прологе у меня получилось вот так

domains
il=integer*
predicates
razdel(il,il,il)
clauses
razdel([Y],[Y],[]):-!.
razdel([Y,X],[Y],[X]):-!.
razdel([Y,X|Tail],[Y|Tail1],[X|Tail2]):-razdel(Tail,Tail1,Tail2).

например: goal: razdel([1,2,3,4,5,6,7,8]L,M)
L=[1,3,5,7], M=[2,4,6,8]

Теперь надо эту же задачу на лиспе. Чего я сделать не могу, так как лисп не знаю совсем!!!!! ПОМОГИТЕ ПОЖАЛУЙЧТА!!!!!!!!!!!!!!
mashik2503 вне форума Ответить с цитированием
Старый 17.05.2011, 19:14   #2
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Ну, самым простым, на мой взгляд, будет что-то такое:
Код:
(defun razdel (a-list)
  (let (evens odds)
    (dolist (x a-list)
      (if (evenp x)
          (push x evens)
          (push x odds)))
    (list evens odds)))
вот пример http://ideone.com/jNNqZ
netrino вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка матриц.В каждой строке матрицы найти первый минимальный и первый максимальный элементы и поменя ride013 Помощь студентам 4 20.04.2011 13:14
Нечетные элементы Кристинка89 Общие вопросы C/C++ 3 28.03.2011 02:52
четные и нечетные (delphi 7) STIFLER32 Помощь студентам 8 19.11.2009 17:24
В один массив нужно переслать чётные, а в другой - нечетные элементы матрицы. ...Diman... Паскаль, Turbo Pascal, PascalABC.NET 4 15.01.2009 15:15