Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

should be written in racket Problem 2 [10pt] Implement the following three functions in hw3.rkt and submit your code to hw3-code Gradescope assignment. You may

image text in transcribedshould be written in racket

Problem 2 [10pt] Implement the following three functions in hw3.rkt and submit your code to hw3-code Gradescope assignment. You may NOT use any of Scheme's imperative features (assignment/loops) or anything else not covered in class. You should use Racket (https://racket-lang.org) for your implementation. For all problems, you can assume all inputs obey the types as specified in a problem. a) (4pts) Define a function funpower in Racket. funpower takes in two arguments f (a function) and n (a non-negative integer), and returns a new function that applies f n times. For example (funpower sqrt 2) is a function that applies sqrt to input two times. ((funpower sqrt 2) 16) should evaluate to 2. b) (4pts) Define a function encode in Racket. encode takes in a non-negative integer number n, and returns a function which takes in another function f as argument and returns a function that is equivalent to fr (applying f to input n times). For example (((encode 2) sqrt) 16) should evaluate to 2. When n is 0, fr should be the identity function id(x) = x. c) (2pts) Define a function decode in Racket. decode should take the result of encode applied to a non- negative integer and gives back the non-negative integer. For example (decode (encode 3)) should evaluates to 3. #lang racket (define (double x) (* 2 x)) ; a helper function for testing code. (define (funpower fn) (lambda (x) x)) ((funpower sqrt 2) 16) ; should evaluate to 2 ((funpower double 0) 3) ; should evaluate to 3 (define (encode n) (lambda (f) f)) (((encode 2) sqrt) 16) ; should evaluate to 2 (define (decode n) 0) (decode (encode 5)) ; should evaluate to 5 Problem 2 [10pt] Implement the following three functions in hw3.rkt and submit your code to hw3-code Gradescope assignment. You may NOT use any of Scheme's imperative features (assignment/loops) or anything else not covered in class. You should use Racket (https://racket-lang.org) for your implementation. For all problems, you can assume all inputs obey the types as specified in a problem. a) (4pts) Define a function funpower in Racket. funpower takes in two arguments f (a function) and n (a non-negative integer), and returns a new function that applies f n times. For example (funpower sqrt 2) is a function that applies sqrt to input two times. ((funpower sqrt 2) 16) should evaluate to 2. b) (4pts) Define a function encode in Racket. encode takes in a non-negative integer number n, and returns a function which takes in another function f as argument and returns a function that is equivalent to fr (applying f to input n times). For example (((encode 2) sqrt) 16) should evaluate to 2. When n is 0, fr should be the identity function id(x) = x. c) (2pts) Define a function decode in Racket. decode should take the result of encode applied to a non- negative integer and gives back the non-negative integer. For example (decode (encode 3)) should evaluates to 3. #lang racket (define (double x) (* 2 x)) ; a helper function for testing code. (define (funpower fn) (lambda (x) x)) ((funpower sqrt 2) 16) ; should evaluate to 2 ((funpower double 0) 3) ; should evaluate to 3 (define (encode n) (lambda (f) f)) (((encode 2) sqrt) 16) ; should evaluate to 2 (define (decode n) 0) (decode (encode 5)) ; should evaluate to 5

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Flash XML Applications Use AS2 And AS3 To Create Photo Galleries Menus And Databases

Authors: Joachim Schnier

1st Edition

0240809173, 978-0240809175

More Books

Students also viewed these Databases questions

Question

What are the best practices for managing a large software project?

Answered: 1 week ago

Question

How does clustering in unsupervised learning help in data analysis?

Answered: 1 week ago