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

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

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

не справляюсь с этим чудо-языком.. буду благодарен помощи в решении задач: Опpеделить пpедикат, проверяющий, является ли одно множество подмножеством дpугого.

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

textual
Листинг программы
(defun is-subset (a b)
  (cond ((null a) t)
        ((member (car a) b) (is-subset (cdr a) b))
        (t nil)))  
 
==> is-subset
 
(is-subset '(x y) '(a c v x z y))
 
==> T
 
(is-subset '(x y) '(a c v z y))
 
==> NIL

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

В коде определён вспомогательный функциональный символ с именем is-subset, который проверяет, является ли одно множество подмножеством другого. При вызове функционального символа is-subset со списочными аргументами ('(x y)) и ('(a c v x z y)) возвращается значение T, что означает, что первое множество является подмножеством второго. При вызове функционального символа is-subset со списочными аргументами ('(x y)) и ('(a c v z y)) возвращается значение NIL, что означает, что первое множество не является подмножеством второго.

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


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

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

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