Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лифп / Списки

.docx
Скачиваний:
5
Добавлен:
27.01.2022
Размер:
42.21 Кб
Скачать

Министерство образования и науки Кыргызской Республики

Кыргызский Государственный Технический Университет им. Раззакова

Факультет Информационных Технологий

Кафедра «Информатика и Вычислительная техника»

Отчет

ЛИФП

Лабораторная работа № 4 (списки)

8 вариант

Удалить из символьного списка все символы, которые встречаются более

одного раза.

domains

list=char*

predicates

nondeterm spisok(integer,list)

nondeterm dublicat(list,list)

delete1(list,char,list)

clauses

spisok(H,[H|_]).

spisok(H,[_|T]):-spisok(H,T).

dublicat([H|T],T1):-spisok(H,T),delete1(T,H,T2),

dublicat(T2,T1).

dublicat([H|T],[H|T1]):-not(spisok(H,T)),dublicat(T,T1).

dublicat([],[]).

delete1([], _, []).

delete1([Elem|T], Elem, R) :-

!,

delete1(T, Elem, R).

delete1([H|T], Elem, [H|R]) :-

delete1(T, Elem, R).

goal

dublicat(['1','1','2','3','b','c','c'],A).

Соседние файлы в папке Лифп