Exercises

15.7What does the following code do?
1 public int mystery(int a, int b)
2 {
3    if (b == 1)
4       return a;
5    else
6       return a + mystery(a, b - 1);
7 } // end method mystery
15.8Find the error(s) in the following recursive method, and explain how to correct it (them). This method should find the sum of the values from 0 to n.
 1 public int sum(int n)
 2 {
 3    if ( n == 0 )
 4       return 0;
 5    else
 6       return n + sum( n );
 7 } // end method sum
15.9(Recursive power Method) Write a recursive method power(base, exponent) that, when called, returns

baseexponent

For example, power(3,4) = 3 * 3 * 3 * 3. Assume that exponent is an integer greater than or equal to 1. [Hint: The recursion step should use the relationship

baseexponent = base · base exponent ...

Get Java™ How to Program, Seventh Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.