Подсчитать количество и сумму цифр целого N - Lisp
Формулировка задачи:
Подсчитать число и сумму цифр целого N.
МНЕ нужно упростить до 1 функции , чтобы cons возвращался для каждой
(defun numb (n)
(cond
((= 0 (floor n 10)) 1)
(t (+ 1 (numb (floor n 10))))))
(defun sum (n)
(cond
((< n 10) n)
(t ( + (rem n 10) (sum (truncate ( / n 10)))))
))
(defun res (n)
(cons (numb n) (sum n)))Решение задачи: «Подсчитать количество и сумму цифр целого N»
textual
Листинг программы
(defun sum-and-number-of-digits (n) (cond ((= 0 n) '(0 1)) (t (list (+ (rem n 10) (car (sum-and-number-of-digits (floor n 10)))) (+ 1 (cadr (sum-and-number-of-digits (floor n 10))))))))