![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
dron4ik |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 318 Пол: Мужской Репутация: ![]() ![]() ![]() |
Всем привет. Возникла проблема по написанию проги..не могу реализовать список точнее сделать операцию REMOVESUBLIST – Удаление из списка всех подсписков.
помогите кто знает как это сделать вот выложил прогу может оттуда что можно сдуть( Есть похожая программка которая удаляет из списка первого вхождения заданного элемента. Код include "labanumberthree.inc" domains spisok=INTEGER* predicates del(spisok,integer,spisok). clauses del([],X,[]). del([H|X],H,X). %- будет работать в случае, если мы хотим удалить первый элемент из списка. del([H|T],X,[H|T1]):-X<>H, del(T,X,T1). /* -будет работать если мы хотим удалить не первый элемент из списка ,в данном случае эта строка работает так: 1)сравнивается 1й элемент хвостовой части 1го списка с заданным значением пользователя ,если они не равны, то этот элемент заносится во второй пустой список 2)рекурсивно проверяется 2й элемент хвостовой части с дальнейшими последующими действиями и далее все остальные 3) При нахождении одинаковых элементов он не заносится в новый список.*/ goal del([1,2,3,4,5,6,2,1,2],2,X).%-будет выдан ответ: X=[1,3,4,5,6,2,1,2] |
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 23:24 |