Сформировать список L1 из элементов - Prolog
Формулировка задачи:
Здравствуйте, помогите пожалуйста, нужно выполнить задание:
Сформировать список L1 из элементов: произведение всех n элементов L, произведение первых n-1 элементов и т.д.
Заранее благодарен.
Решение задачи: «Сформировать список L1 из элементов»
textual
Листинг программы
- domains
- int=integer
- intl=int*
- predicates
- plist(intl,int)
- butlast(intl,intl)
- task(intl,intl)
- clauses
- plist([],1).
- plist([H|T],Q) :- plist(T,Z), Q=Z*H.
- butlast([_],[]).
- butlast([H|T],[H|Q]) :- butlast(T,Q).
- task([X],[X]).
- task(Q,[Z|T]) :- plist(Q,Z), butlast(Q,U), task(U,T).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д