Удаления элемента из списка по номеру на языке программирования Пролог,prolog


Добавил:DMT
Дата создания:6 января 2008, 15:00
Дата обновления:28 апреля 2008, 12:49
Просмотров:6563 последний 14 апреля, 20:45
Комментариев: 0

Удаления элемента из списка по номеру на языке программирования Пролог,prolog

Код на Lisp
  1. domains
  2. int=integer
  3. str=string
  4. strp=str*
  5.  
  6. predicates
  7.  
  8. delete(int,strp,strp).
  9. /* удаление элемента из списка по номеру
  10. параметры:
  11. int - номер элемента
  12. strp - исходный список
  13. strp - получаемый список */
  14. clauses
  15. delete(X,[],[]):- X>1 ,
  16. messege(" Номер больше числа элементов списка\n"),!.
  17. delete(X,Y,Y):- X<1,messege("Недопустимый номер\n"),!.
  18. delete(1,[Head|Z],Z):- !.
  19. delete(X,[Head|Y],[Head|Z]) :- X1=X-1,delete(X1,Y,Z).
При использовании обязательна ссылка на http://DMTSoft.ru
up