diff options
| Commit | 9143bd2239cb82124f4c4080070fc45b54df388d (patch) | |
|---|---|---|
| Author | 2022-10-16 11:41:39 +0300 | |
| Committer | 2022-10-16 11:41:39 +0300 | |
| Files | 03ff575600ff22d2aec14eb6d6c7a34293bc56c4 | |
| uni-projects-9143bd2239cb82124f4c4080070fc45b54df388d.tar uni-projects-9143bd2239cb82124f4c4080070fc45b54df388d.tar.gz uni-projects-9143bd2239cb82124f4c4080070fc45b54df388d.zip | ||
| Parent | 21f765bd6740dc3a50fad8fa512696bcb64b3944 (diff) | |
[FP/P01] Added work from first practicum
1 files changed, 23 insertions, 0 deletions
| -rw-r--r-- | Year 2/Functional Programming/01-Practice-03.11.2022.rkt | 23 |
diff --git a/Year 2/Functional Programming/01-Practice-03.11.2022.rkt b/Year 2/Functional Programming/01-Practice-03.11.2022.rkt new file mode 100644 index 0000000..463bfde --- /dev/null +++ b/Year 2/Functional Programming/01-Practice-03.11.2022.rkt @@ -0,0 +1,23 @@ +(define (avgsqr a b) + (define (sqr x) + (* x x)) + (/ (+ (sqr a) (sqr b)) 2)) + +(define (fac x) + (if (<= x 1) + 1 + (* x (fac (- x 1))))) + +(define (minfib maxval) + (define (minfib maxval [a 1] [b 1]) + (if (> b maxval) + a + (minfib maxval b (+ a b)))) + (minfib maxval)) + +(define (fib x) + (if (<= x 1) + 1 + (+ (fib (- x 2)) (fib (- x 1))))) + + |
