Код Ревью

Сравни свои решения

    #| BEGIN (Введите свое решение) |#
(define (cons a b) (* (expt 2 a) (expt 3 b)))

(define (divides? a b)
  (= (remainder b a) 0))

(define (car p)
  (define (iter p i)
   (if (divides? 2 p)
    (iter (/ p 2) (+ i 1))
    i))
  (iter p 0))

(define (cdr p)
  (define (iter p i)
   (if (divides? 3 p)
    (iter (/ p 3) (+ i 1))
    i))
  (iter p 0))
#| END |#