; modified coin change

(define (digits n . args)
  (let ((b (if (null? args) 10 (car args))))
    (let loop ((n n) (d '()))
      (if (zero? n) d
          (loop (quotient n b)
                (cons (modulo n b) d))))))

(define (sum xs) (apply + xs))

(define (f n) (sum (digits n 5)))

(display (f 42)) (newline)
(display (f 142)) (newline)