Question: Part A Write a function in ocaml range : int -> int -> int list such that range num1 num2 returns an ordered list of

Part A

Write a function in ocaml

range : int -> int -> int list 

such that range num1 num2 returns an ordered list of all integers from num1 to num2 inclusive. For example, range 2 5 = [2;3;4;5]. Raise the exception IncorrectRange if num2 < num1.

exception IncorrectRange let rec range num1 num2 = (* YOUR CODE HERE *) raise (Failure "Not implemented") 
assert (range 2 5 = [2;3;4;5]) 

part B

Write a function in Ocaml

zipwith : ('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c list 

such that zipwith f l1 l2 generates a list whose ith element is obtained by applying f to the ith element of l1 and the ith element of l2 . If the lists have different lengths, the extra elements in the longer list should be ignored. For example, zipwith (+) [1;2;3] [4;5] = [5;7].

let rec zipwith f l1 l2 = (* YOUR CODE HERE *) raise (Failure "Not implemented") 
assert (zipwith (+) [1;2;3] [4;5] = [5;7])

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!