Даны два списка, построить третий список. TurboProlog

Узнай цену своей работы

Формулировка задачи:

Здравствуйте.Помогите пожалуйста с заданием! Нужно написать на TurboProlog. Даны два числовых списка. Построить третий список, количество элементов которого равно длине второго списка и каждый элемент равен количеству элементов первого списка, меньших соответствующего элемента второго списка: (1 7 3 0 2) (3 7 10) —> (3 4 5).

Решение задачи: «Даны два списка, построить третий список. TurboProlog»

textual
Листинг программы
domains
int=integer
intl=int*
 
predicates
count_less(intl,int,int)
task(intl,intl,intl)
 
clauses
count_less([],_,0).
count_less([H|T],P,Q) :- H<P, count_less(T,P,Q1),  Q=Q1+1.
count_less([H|T],P,Q) :- H>=P, count_less(T,P,Q).
 
task(_,[],[]).
task(X,[H|T],[Q|R]) :- count_less(X,H,Q), task(X,T,R).

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


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

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

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