Can someone please explain this recursion question the problem is solved? : <blockquote>
  <p>Given base and n that are both 1 or more, compute recursively (no
  loops) the value of base to the n power, so powerN(3, 2) is 9 (3
  squared).</p>
</blockquote>

<p>The answer is </p>

<pre><code>public int powerN(int base, int n) {

if(n == 1)
        return base;
    return base * powerN(base, n - 1);
}
</code></pre>

<p>I am confused because when I look at this because is this not saying multiply the base against the returned number of <code>powerN()</code>?</p>

<blockquote>
  <p>powerN(3,3);</p>
  
  <p>= 3</p>
  
  <p>= 3*powerN(base, n-1) = 6</p>
  
  <p>= 3*powerN(base, n-1) = 9</p>
</blockquote>

<p>Which would multiply 9*6*3?</p>

<p>I do not see why we would have to multiply the base by the function? </p>

<p>Should the method not just return the answer as the base never changes and once <code>n==1</code> the base case executes </p>
