Получить индекс элемента - Lisp
Формулировка задачи:
Помогите пожалуйста решить
Определить рекурсивную функцию. Распечатать результаты трассировки. Указать вид трассировки.Указать вид рекурсии(рекурсия по значению или по аргументу)В задании все операции над списками выполняются только с элементами верхнего уровня,хотя списки могут содержать подсписки.Рекурсия выполняется только в направлении CDR списка.
(INDEX i x) выдает i элемент списка x (предполагается что x имеет длину не меньше i).
Решение задачи: «Получить индекс элемента»
textual
Листинг программы
(defun index (e x) (cond ((eq e (car x)) 0) (t (+ 1 (index e (cdr x)))))) ==> INDEX (trace index) ==> INDEX (index 'e '(q w e r t y)) Вход в функцию index Аргументы: E (Q W E R T Y) Вход в функцию index Аргументы: E (W E R T Y) Вход в функцию index Аргументы: E (E R T Y) Возврат из функции index Результат: 0 Возврат из функции index Результат: 1 Возврат из функции index Результат: 2 ==> 2
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д