summaryrefslogtreecommitdiff
path: root/coding-exercises/1/chapter117.rkt
diff options
context:
space:
mode:
authorMike Vink <mike1994vink@gmail.com>2023-03-03 09:33:13 +0100
committerMike Vink <mike1994vink@gmail.com>2023-03-03 09:33:13 +0100
commit0988f106514e61b59f53e7fe3c599e03edcfd47c (patch)
treef8faeb9e9d5047828c7c386eb4db363212e52cb6 /coding-exercises/1/chapter117.rkt
parentb99dd822372b63c994bb97ff9971cfc64c721552 (diff)
folder
Diffstat (limited to 'coding-exercises/1/chapter117.rkt')
-rw-r--r--coding-exercises/1/chapter117.rkt12
1 files changed, 12 insertions, 0 deletions
diff --git a/coding-exercises/1/chapter117.rkt b/coding-exercises/1/chapter117.rkt
new file mode 100644
index 0000000..4a78d54
--- /dev/null
+++ b/coding-exercises/1/chapter117.rkt
@@ -0,0 +1,12 @@
+(define (halve a) (/ a 2))
+(define (double a) (* a 2))
+
+(define (miter s a b)
+ (cond ((= b 0) s)
+ ((even? b) (miter s (double a) (halve b)))
+ (else (miter (+ s a) (double a) (halve (- b 1))))))
+
+(define (m a b)
+ (miter 0 a b))
+
+(m 3 5)