Написать функцию, которая проверяет образует ли список убывающую последовательность - Lisp
Формулировка задачи:
Написать функцию, которая проверяет расположены ли числовые элементы списка или одномерного массива в порядке убывания. Помогите пожалуйста!
Решение задачи: «Написать функцию, которая проверяет образует ли список убывающую последовательность»
textual
Листинг программы
(defun task (lst) (apply '> (remove-if-not 'numberp lst)))
Объяснение кода листинга программы
В данном коде реализована функция с именем task, которая принимает в качестве аргумента список lst.
- Функция
remove-if-notудаляет из списка все элементы, которые не являются числами. Таким образом, в результате получается список, содержащий только числа. - Функция
applyприменяет к полученному списку чисел оператор>, сравнивая каждый элемент списка со следующим за ним элементом. Если текущий элемент больше следующего, то он возвращается в качестве результата. Таким образом, функцияtaskпроверяет, образует ли список убывающую последовательность чисел. Если это так, то возвращается значениеtrue, в противном случае -false.