В списке есть вложенные списки,если все числа во вложенном списке положительные,то вывести сумму этих чисел - Lisp

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

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

есть список ,в нём вложенные подсписки,если во вложенном подсписке все элементы положительные то вывести сумму этих чисел.Например (list 1 2 -1 (3 4 5) -3 4 5) Ответ: (1 2 -1 (12) -3 4 5)

Решение задачи: «В списке есть вложенные списки,если все числа во вложенном списке положительные,то вывести сумму этих чисел»

textual
Листинг программы
(defun task (lst)
  (mapcar #'(lambda (x)
              (cond ((atom x) x)
                    ((and (atomlist x)(apply '< x)) (list (apply '+ x)))
                    (t (task x)))) lst))
 
 
==> task
 
(task '(1 2 -1 (3 4 5) -3 4 5))
 
==> (1 2 -1 (12) -3 4 5)

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


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

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

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