(A 2 4) (A 1 (A 2 3)) (A 1 (A 1 (A 2 2))) (A 1 (A 1 (A 1 (A 2 1)))) (A 1 (A 1 (A 1 2))) (A 1 (A 1 (A 0 (A 1 1)))) (A 1 (A 1 (A 0 2))) (A 1 (A 1 4)) (A 1 (A 0 (A 1 3))) (A 1 (A 0 (A 0 (A 1 2)))) (A 1 (A 0 (A 0 (A 0 (A 1 1))))) (A 1 (A 0 (A 0 (A 0 2)))) (A 1 (A 0 (A 0 4))) (A 1 (A 0 8)) (A 1 16)
(f n)计算的是2n ,(g n)计算的是2^n,(h n)计算的是什么鬼啊
1.11
1 2 3 4 5 6 7
(define (f n) (if (< n 3) n (+ (f (- n 1)) (*2 (f (- n 2))) (*3 (f (- n 3))) )))
迭代版本的暂时没弄懂…先放着
1 2 3 4 5 6 7 8
(define (f n) (define (f-i a b c count) (cond ((< n 3) n) ((<= count 0) a) (else (f-i (+ a (*2 b) (*3 c)) a b (- count 1)))) ) (f-i210 (- n 2)) )