; modulo
(define (% a b)
(remainder a b) )
; division entiere
(define (div-int numerateur diviseur) (/ (- numerateur (% numerateur diviseur) ) diviseur))
; le code en lui-meme
(define (fold-chiffres n f v0) (if (= n 0) v0 (fold-chiffres (div-int n 10) f (f (% n 10 )v0))))
(define (prod-chiffres n) (fold-chiffres n * 1))
(define (sum-chiffres n) (fold-chiffres n + 0))