Blob
1 (define (factorial n)2 (if (= n 1)3 14 (* n (factorial (- n 1)))))6 (define (factorial n)7 (fact-iter 1 1 n))8 (define (fact-iter product counter max-count)9 (if (> counter max-count)10 product11 (fact-iter (* product counter) (+ counter 1) max-count)))14 (define (+ a b)15 (if ( = a 0)16 b17 (inc (+ (dec a) b))))19 ;; This is a recursive process20 (+ 4 5)21 (inc (+ 3 5))22 (inc (inc (+ 2 5)))23 (inc (inc (inc (+ 1 5))))24 (inc (inc (inc (inc (+ 0 5)))))25 (inc (inc (inc (inc 5))))26 ;; ...28 (define (+ a b)29 (if (= a 0)30 b31 (+ (dec a) (inc b))))33 ;; This is an iterative process34 (+ 4 5)35 (+ 3 6)36 (+ 2 7)37 (+ 1 8)38 (+ 0 9)