Определить функцию MAKE-EVEN - Lisp
Формулировка задачи:
Определить функцию MAKE-EVEN, которая имеет один аргумент - список числовых значений. Функция MAKE-EVEN превращает четные числа списка в нечетные, добавляя к ним единицу. Если число уже нечетное, то оно остается без изменений.
Решение задачи: «Определить функцию MAKE-EVEN»
textual
Листинг программы
- ((lambda (x f)
- (cond ((null x) nil)
- ((evenp (car x)) (cons (+ 1 (car x)) (funcall f (cdr x) f)))
- (t (cons (car x) (funcall f (cdr x) f)))))
- '(1 2 3 4 5 6 7 8 9 10)
- (lambda (x f)
- (cond ((null x) nil)
- ((evenp (car x)) (cons (+ 1 (car x)) (funcall f (cdr x) f)))
- (t (cons (car x) (funcall f (cdr x) f))))))
- ==> (1 3 3 5 5 7 7 9 9 11)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д