Определить функцию, которая возвращает последний элемент первого списка, входящий также и во второй список - Lisp

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

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

Даны два списка. Определить функцию, которая возвращает последний элемент первого списка, входящий также и во второй список, в противном случае nil. Например: если дано "(2 3 4 5 6) (4 1 3 8 5)", ответом будет 5.

Решение задачи: «Определить функцию, которая возвращает последний элемент первого списка, входящий также и во второй список»

textual
Листинг программы
(defun foo (lst1 lst2)
            (loop for i in (reverse lst1)
               when (find i lst2) 
               return i))

Объяснение кода листинга программы

В данном коде определена функция foo, которая принимает два аргумента lst1 и lst2. Список lst1 в цикле loop перебирается в обратном порядке с помощью выражения reverse lst1. В каждой итерации цикла проверяется, является ли текущий элемент i членом списка lst2 с помощью функции find. Если элемент найден, то он возвращается в качестве результата работы функции.

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


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

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

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