Ответ в теме: Вставить элемент в конец списка на Prolog

      Комментарии к записи Ответ в теме: Вставить элемент в конец списка на Prolog отключены
#2795

Списки в пролог являются односвязными и у вас есть только указатель на первый элемент списка. Поэтому чтобы добавить значение в конец, нужно сначала получить последний элемент и прикрепить к нему новый узел.

На рисунке показана блок-схема алгоритма, выполняющего вставку узла в конец списка. Реализация алгоритма на языке Prolog:

insert_back_element([], Element, [Element]):-!.
insert_back_element([Head|Tail], Element, [Head|TailWithElement]):-
  insert_back_element(Tail, Element, TailWithElement).

Вложения: