From 149e9dfd32b91e94dd229d455c32b7083ab8efb2 Mon Sep 17 00:00:00 2001 From: NaiJi Date: Mon, 3 Aug 2020 22:57:03 +0300 Subject: [PATCH] Add 1.16 --- sicp-ex-1.16 | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 sicp-ex-1.16 diff --git a/sicp-ex-1.16 b/sicp-ex-1.16 new file mode 100644 index 0000000..afdf1a9 --- /dev/null +++ b/sicp-ex-1.16 @@ -0,0 +1,19 @@ +; UNFINISHED +(define (sqr n) + (* n n)) + +(define (fast-ext-iter number power product) + (cond ((= power 0) product) + ((even? power) (fast-ext-iter number + (/ power 2) + (if (= product 1) + (sqr number) + (sqr product)))) + (else (fast-ext-iter number + (- power 1) + (* power product))))) + +(define (fast-ext number power) + (fast-ext-iter number power 1)) + +(fast-ext 2 8) \ No newline at end of file