summaryrefslogtreecommitdiff
path: root/tree-recursion.rkt
diff options
context:
space:
mode:
authorMike Vink <mike1994vink@gmail.com>2022-12-04 22:24:51 +0100
committerMike Vink <mike1994vink@gmail.com>2022-12-04 22:24:51 +0100
commitd062ec686a486822625e34cfa262e6d4e5b76a8d (patch)
tree0302d1775edb196bafcb126ccdfa2657a3e074c1 /tree-recursion.rkt
parente91745248ef79ce96d39771d5194784536fb581c (diff)
simultaneous operation and swap
Diffstat (limited to 'tree-recursion.rkt')
-rw-r--r--tree-recursion.rkt19
1 files changed, 19 insertions, 0 deletions
diff --git a/tree-recursion.rkt b/tree-recursion.rkt
new file mode 100644
index 0000000..031d40f
--- /dev/null
+++ b/tree-recursion.rkt
@@ -0,0 +1,19 @@
+#lang sicp
+(define (myfun n)
+ (cond ((< n 3) n)
+ (else (+ (myfun (- n 1))
+ (* 2 (myfun (- n 2)))
+ (* 3 (myfun (- n 3)))))))
+(myfun 11)
+
+(define (myfun2 n)
+ (define (mf i a b c)
+ (cond ((< n 3) n)
+ ((> i n) a)
+ (else (mf (+ i 1)
+ (+ a (* 2 b) (* 3 c))
+ a
+ b))))
+ (mf 3 2 1 0))
+
+(myfun 11)