Question: please code the following functions in clisp. NOT in racket !!!!!!!!!!!!!!!!!!!! Function 3: zipper Define a function that takes two lists as arguments and returns

please code the following functions in clisp. NOT in racket !!!!!!!!!!!!!!!!!!!!

Function 3: zipper

Define a function that takes two lists as arguments and returns a single list of pairs (i.e. two element sublists). The first pair should both be the first elements from the respective lists. The second pair should be the second elements from the respective lists, and so on. If one input list is longer than the other, extra elements of the longer list are ignored. Your implementation must be recursive.

  • Input: Two Lists of elements of any type, potentially heterogenous. The two lists do not have to be the same length.
  • Output: A new list whose elements are each two-element sublists.
  • Examples:

> (zipper '(1 2 3 4) '(a b c d))

'((1 a) (2 b) (3 c) (4 d))

> (zipper '(1 2 3) '(4 9 5 7))

'((1 4) (2 9) (3 5))

> (zipper '(5) '( ))

'( )

Function 5: segregate

Define a function that takes a list of integers as an argument and returns a list containing two sublists, the first sublist containing the even numbers from the original list and second sublist containing the odd numbers from the original list. Your implementation must be recursive.

  • Input: A lists of Integers
  • Output: A new list with two sublists. The first sublist contains the even numbers from the original list and second sublist contains the odd numbers.
  • Example:

> (segregate '(7 2 3 5 8))

'((2 8) (7 3 5))

> (segregate '(3 -5 8 16 99))

'((8 16) (3 -5 99))

> (segregate '( ))

'(( ) ( ))

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!