April 19, 2013
We filled in a missing piece of the Standard Prelude in the previous exercise. In today’s exercise we fill in another missing piece, the integer root function:
iroot(k, n) returns the largest integer x such that xk does not exceed n, assuming k and n are both positive integers. For example,
iroot(3, 125) equals 5, because 53 equals 125; likewise,
iroot(3, 126) equals 5, but
iroot(3, 124) is 4, because 53 is greater than 124.
Your task is to write the integer root function. When you are finished, you are welcome to read or run a suggested solution, or to post your own solution or discuss the exercise in the comments below.