Получить список сумм чисел двухуровневого списка - Lisp
Формулировка задачи:
3. L1 – список списков списков чисел. Получить список чисел L2, в котором каждый элемент равен сумме элементов соответствующих подсписков.
Пример: (f ‘(((1 2))((1 2)(3 4))((5 6)))
Результат: (3 10 11)
Решение задачи: «Получить список сумм чисел двухуровневого списка»
textual
Листинг программы
(defun task(lst) (mapcar (lambda (x) (apply '+ x)) lst)) ==> task (task '((1 2) (3 4) (5 6))) ==> (3 7 11)
Объяснение кода листинга программы
В коде определена функция с именем task. Она принимает один аргумент lst, который должен быть двухуровневым списком. Функция использует оператор mapcar, чтобы применить функцию (x) к каждому элементу списка lst. Функция (x) в свою очередь применяет оператор apply к функции плюс (+) и передает ей каждый элемент списка lst. Результатом работы функции task является список сумм чисел двухуровневого списка lst. Пример использования функции: (task '((1 2) (3 4) (5 6))) Вывод: (3 7 11)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д