Problem 1: Find values of function for values in list

Assume that a Racket function which computes some mathematical function \(f(n)\) is available. Write a function which takes a list of values $n_0, n_1, $, and returns a list \(f(n_0), f(n_1), \cdots\). For example:

    ;Function: Number -> Number
    ;returns square of given number
    (define (f n)
        (* n n))

    (define (functionValues functionToUse valuesList)
        ...)

    (check-expect (functionValues f (list 2 3 10 4)) (list 4 9 100 16))

NOTE: Make sure to set the language to Advanced Student before you start this exercise

Problem 2: Apply functions

Apply the following functions to your implementation above:

\[ f(n)=n! \] \[ f(n)=\left\{ \begin{array}{cc} \textrm{undefined} & \textrm{if $n\le 0$ } \\ 1 & 1\le n \le 3 \\ f(n-1)+f(n-2)+f(n-3) & \textrm{otherwise} \end{array}\right.\]