Quantcast
Viewing all articles
Browse latest Browse all 516572

разобраться в ошибке - Lisp

Задача:сформировать список,содержащий номера позиций элементов исходного списка,удовлетворяющих заданному условию(в моем случае элемент должен быть положительным)

(defun f(x)(if (> x 0) T nil));;предикат выводящий Т если число больше нуля,в противном случае Nil

(defun pos (x L);;функция находящая позицию(индекс) элемента в списке
(if (eq (car L) x) 0 (+ 1 (pos x (cdr L)))))

(defun spisok_pozich(L f pos);;главная функция
(
cond ((null l) nil)
(t
((f(car l) T) (cons (pos(carl L)) (spisok_pozich((cdr L) f pos))))
)))

Viewing all articles
Browse latest Browse all 516572

Trending Articles