(define (fact-iter n acc) (if (zero? n) acc (fact-iter (- n 1) (* acc n)))) (define (mem? n lst) (cond ((null? lst) #f) ((= (car lst ) n) #t) (else (mem? n (cdr lst))))) (define (fib n) (fib-iter n 0 0 1)) (define (fib-iter n i small large) (if (< i n) (fib-iter n (+ i 1) large (+ large small)) small)) ; > (fact-iter 5 1) ; 120 ; > (mem? 5 (list 1 2 3 4 5 6)) ; #t ; > (fib 8) ; 21