diff options
[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))))) + + |
