Списки

Задача 1

Проверить вхождение элемента в список.

Напишем код:

member(X,[X|T]).
member(X,[H|T]) :- member(X,T).
ismaninlist(K) :- member(K, [maxim, nina, george, alex]).

Зададим вопрос системе.

ismaninlist(george).

Задача 2

Вывести все элементы списка на экран.

Напишем код:

printlist(X,[X|T]).
printlist(X,[H|T]) :- write(H), nl, printlist(X,T).
printlistfinal([X|T]) :- printlist(notexistselement,[X|T]).

Зададим вопрос системе.

printlistfinal([maxim, nina, george, alex, ann]).

Задача 3

Вывести на экран длину списка.

Напишем код:

writeNumber(X) :- X_NEW is X, write(X_NEW).
a(L, COUNT) :- COUNT_NUMBER is COUNT, length(L, COUNT_NUMBER), writeNumber(COUNT); NEW_COUNT = COUNT + 1, a(L, NEW_COUNT).
arrlen(L) :- a(L, 0).

Зададим вопрос системе.

arrlen([maxim, nina, george]).

Last updated

Was this helpful?