Код Ревью
Сравни свои решения
#| BEGIN (Введите свое решение) |#
(define (double a)
(* a 2))
(define (halve a)
(/ a 2))
(define (mul-iter b n)
(define (iter a b n)
(cond ((or (= b 0) (= n 0)) 0)
((= b 1) (+ a n))
((even? b) (iter a (halve b) (double n)))
(else (iter (+ a n) (halve (- b 1)) (double n)))))
(iter 0 b n))
#| END |#