Как прочитать массив "список" и распечатать его в прологе?
Как прочитать массив "список" и распечатать его в прологе? Мне нужно:- Предложить пользователю вставить массив. Пользователь как-то говорит мне, что он закончил. Затем я распечатываю его.
Я просто не могу придумать, как сделать это в предикате.
1 ответ
Решение
Это то, что вы хотели бы иметь?
1 ?- p(X).
|: a.
|: b.
|: c.
|: d.
|: end.
Код:-
X = [a, b, c, d].
Вот как можно реализовать это поведение:
p(X) :- read(A), q(A,X-[]).
q(end,X-X) :- !.
q(A,[A|X]-Y) :- read(B), q(B,X-Y).