# Thread: problem with recursive method

1. Member Join Date
Sep 2012
Posts
7
Rep Power
0

## problem with recursive method

My problem is with this exercise:
Write a recursive method called power that takes a double x, and an integer n and that returns x^n. Hint: a recursive definition of this operation is x^n = x*x^(n-1). Also, remember that anything raised to the zeroeth power is 1. Optional challenge: you can make this method more efficient, when n is even, using x^n=(x^(n/2))^2.

Now call me crazy but I just can't see why recursion is necessary or how it could be implemented into this, here is the code I wrote:
Java Code:
```package edu.vtc.aav10260.cis2261;
import java.util.Scanner;
/**
* @author andre
*
*/
public class Power {

/**
* @param args
* @return
*/
public static double main(String[] args) {
Scanner kbd = new Scanner(System.in);
System.out.println("Enter the values: ");
System.out.print("x= ");
double x = kbd.nextDouble();
System.out.print("n= ");
int n = kbd.nextInt();
return Math.pow(x, n);
}
}```
It works, and returns x^n just as the exercise said, but it specified to use a recursive method so if any of you guys could give me a hand in how recursion would work with this problem it would be appreciated.  Reply With Quote

2. Moderator  Join Date
Jul 2010
Location
California
Posts
1,638
Rep Power
13

## Re: problem with recursive method

A recursive method calls itself, so if you need to calculate the power of a number, how do you think you can do so using a method that calls itself? Break the problem down....what is the definition of power a ^ b ? Use an example where a = 3, b = 4: 3 ^ 4 = 3 * 3 * 3 * 3. In other words, 3 times itself 4 times...so what could you put inside a method that calls itself to calculate a times itself b times?  Reply With Quote

3. Member Join Date
Sep 2012
Posts
7
Rep Power
0

## Re: problem with recursive method

bump  Reply With Quote

4. Moderator  Join Date
Jul 2010
Location
California
Posts
1,638
Rep Power
13

## Re: problem with recursive method

Evidently you don't care for advice given, in fact completely ignored it, which doesn't help your chances of receiving help here or elsewhere. And neither does cross-posting.

Cross posted at help with recursive method  Reply With Quote

5. Member Join Date
Sep 2012
Posts
7
Rep Power
0

## Re: problem with recursive method

i didnt really understand what you were saying  Reply With Quote

6. Moderator  Join Date
Jul 2010
Location
California
Posts
1,638
Rep Power
13

## Re: problem with recursive method Originally Posted by mflb94 i didnt really understand what you were saying
Then ask a question about it rather than ignoring it, because ignoring is a 2-way street.  Reply With Quote

7. Member Join Date
Sep 2012
Posts
7
Rep Power
0

## Re: problem with recursive method

ok well my question is, will you please show me how you would write this code?  Reply With Quote

8. ## Re: problem with recursive method Originally Posted by mflb94 ok well my question is, will you please show me how you would write this code?
That's not how it's done here since we don't do other people's homework. Surely you've studied your text or a tutorial on recursion. Surely you've trued to solve this first yourself. so what about recursion confuses you? What doesn't work in your code attempt?  Reply With Quote

9. Member Join Date
Sep 2012
Posts
7
Rep Power
0

## Re: problem with recursive method

i just don't see how recursion can be used in this problem as I said the code that I wrote did exactly what the exercise says to and doesn't need recursion  Reply With Quote

10. ## Re: problem with recursive method Originally Posted by mflb94 i just don't see how recursion can be used in this problem as I said the code that I wrote did exactly what the exercise says to and doesn't need recursion
Just because you can solve it non-recursively doesn't mean that there isn't a recursive solution. The key as has been mentioned before is to work it out on paper first. But before you do that, see how other recursive methods, like the one for calculating Fibonacci numbers works.  Reply With Quote

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•