sicp/2_5.sch

19 lines
289 B
Scheme

(define (cons a b)
(* (power 2 a) (power 3 b)))
(define (power x n)
(if (= n 0)
1
(* x (power x (- n 1)))))
(define (iter x n p)
(if (> (remainder x n) 0)
p
(iter (quotient x n) n (+ 1 p))))
(define (car z)
(iter z 2 0))
(define (cdr z)
(iter z 3 0))