From ca2a63667583efcb237bb6f9e4323b371d3458da Mon Sep 17 00:00:00 2001 From: NaiJi Date: Tue, 11 Aug 2020 01:32:48 +0300 Subject: [PATCH] Solve 1.16 --- sicp-ex-1.16.rkt | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/sicp-ex-1.16.rkt b/sicp-ex-1.16.rkt index afdf1a9..05b424e 100644 --- a/sicp-ex-1.16.rkt +++ b/sicp-ex-1.16.rkt @@ -1,19 +1,16 @@ -; UNFINISHED (define (sqr n) (* n n)) (define (fast-ext-iter number power product) (cond ((= power 0) product) - ((even? power) (fast-ext-iter number + ((even? power) (fast-ext-iter (sqr number) (/ power 2) - (if (= product 1) - (sqr number) - (sqr product)))) + product)) (else (fast-ext-iter number (- power 1) - (* power product))))) + (* number product))))) (define (fast-ext number power) (fast-ext-iter number power 1)) -(fast-ext 2 8) \ No newline at end of file +(fast-ext 2 5) \ No newline at end of file