Нахождение совпадающих элементов в двух списках - Prolog

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

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

Здравствуйте, начала изучение Prolog. Помогите, пожалуйста, разобраться с задачей: "Нахождение совпадающих элементов в двух списках" . Для конкретного примера: list([a,b,c,d,e,k], [a,c,b,d,k,k],[a,d,k]) - третий список - результат. (т.е. выводит одинаковые буквы, у которых совпадают порядковые номера в списках). сделала объединение двух списков, а как дальше не знаю. list([],L,L). list([H|T],L,[H|T1]):- list(T,L,T1).

Решение задачи: «Нахождение совпадающих элементов в двух списках»

textual
Листинг программы
  1. % вариант 1 - логический
  2. list1([], [], []).
  3. list1([H | T1], [H | T2], [H | R]) :-
  4.     list1(T1, T2, R).
  5. list1([H1 | T1], [H2 | T2], R) :-
  6.     H1 \= H2,
  7.     list1(T1, T2, R).
  8.  
  9. % вариант 2 - практический
  10. list2([], [], []).
  11. list2([H | T1], [H | T2], [H | R]) :-
  12.     !,
  13.     list2(T1, T2, R).
  14. list2([_ | T1], [_ | T2], R) :-
  15.     list2(T1, T2, R).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

15   голосов , оценка 3.867 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы