Задача про 2 списка. Алгоритм пошагового выполнения для рекурсивного обращения - Prolog
Формулировка задачи:
Условие: Даны 2 списка. Занести в результирующий список элементы первого списка, если эти элементы однократно содержатся во втором списке. Если элемент не содержится или встречается 2 или более раз, то в результирующий список элемент не заносится.
Подскажите пожалуйста как решить, в голову уже ничего не лезет)
И желательно выполнить часть пошагового выполнения для рекурсивного обращения (из правой части правила в левую) с указанием конкретизации.
Решение задачи: «Задача про 2 списка. Алгоритм пошагового выполнения для рекурсивного обращения»
textual
Листинг программы
put_if([],_,[]). put_if([H|T],L2,[H|T1]):-count_num(H,L2,N), N=1, put_if(T,L2,T1). put_if([_|T],L2,T1):-put_if(T,L2,T1). % подсчёт количества вхождений count_num(_,[],0). count_num(H,[H|T],N):-count_num(H,T,N1), N is N1+1. %Или N = N1+1, смотря по версии пролога count_num(H,[_|T],N):-count_num(H,T,N),
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д