Question: Objective: To program using the functional programming paradigm. Assignment: Write the following functions using Scheme: 1. A function (binomial N k) that returns the binomial

Objective: To program using the functional programming paradigm.

Assignment: Write the following functions using Scheme:

1. A function (binomial N k) that returns the binomial coefficients C(N, k), defined recursively as: C(N,0) = 1, C(N, N) = 1, and, for 0

2. A function (mod N M) that returns the modulus remainder when dividing N by M.

3. A function (binaryToDecimal b) that takes a binary number and returns its decimal value. (binaryToDecimal 1101) returns 13.

4. A function (addBinary binaryList) that takes a list of binary numbers and returns their decimal sum. (addBinary '(1101 111 10 101)) returns 27.

5. A function (min list) that returns the smallest value in a simple list of integers.

6. A function (myRemove num list) that removes all occurrences of the integer num from a simple list of integers, returning list with num removed. myRemove should return the original list if atm is not found.

7. A function (selectionSort list) that returns a simple list of integers in ascending order using a recursive selection sort algorithm. Hint: use your min function.

All the functions must be written in a functional style and must use only the basic Scheme functions car, cdr, cons, null, atom, the equality functions, the arithmetic functions, append, and the conditional functions if and cond.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!