-
Couldn't load subscription status.
- Fork 132
Closed
Labels
Exercise solutionSolutions to textbook exercisesSolutions to textbook exercises
Description
// Fibonacci // The first function receives n as an argument // It applies the fib function recursively, passing n as an argument, as well as the initial arguments (k = 1, fib1 = 1, fib2 = 1) (n => (fib => fib(fib, n, 2, 1, 1)) // The fib function is then defined as ft, with parameters n, k, fib1, and fib2 // Establish the base cases: n === 1 or n === 2 ((ft, n, k, fib1, fib2) => n === 1 ? 1 : n === 2 ? 1 : // Iterate until k equals n. Notice k starts at 2, and gets incremented every iteration k === n // When k reaches n, return the accumulated fib2 ? fib2 // Otherwise, accumulate the sum as the new fib2 : ft(ft, n, k + 1, fib2, fib1 + fib2))); // Is even function f(x) { return ((is_even, is_odd) => is_even(is_even, is_odd, x)) ((is_ev, is_od, n) => n === 0 ? true : is_od(is_ev, is_od, n - 1), (is_ev, is_od, n) => n === 0 ? false : is_ev(is_ev, is_od, n - 1)); } Metadata
Metadata
Assignees
Labels
Exercise solutionSolutions to textbook exercisesSolutions to textbook exercises