Сформировать список 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).

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 4.364 из 5
Похожие ответы