Объединить три списка с условиями - Prolog
Формулировка задачи:
Помогите пожалуйста с задачкой.
Даны три списка.
Объединить в результирующий список в заданной последовательности:
- первые 3 элемента первого списка
- все элементы второго списка
- элементы третьего списка, кроме двух последних
Очень срочно помогите пожалуйста(
Решение задачи: «Объединить три списка с условиями»
textual
Листинг программы
- domains
- int=integer
- intl=int*
- predicates
- leftl(int,intl,intl)
- app(intl,intl,intl)
- len(intl,int)
- task(intl,intl,intl,intl)
- clauses
- leftl(0,_,[]).
- leftl(N,[H|T],[H|Q]) :- N1=N-1, leftl(N1,T,Q).
- app([],X,X).
- app([H|T],X,[H|Y]) :- app(T,X,Y).
- len([],0).
- len([_|T],N) :- len(T,N1), N=N1+1.
- task(X,Y,Z,R) :- leftl(3,X,X3), len(Z,L), L2=L-2, leftl(L2,Z,ZZ), app(X3,Y,T), app(T,ZZ,R).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д