Consider the following recursive method: public static int recurse (int a,int b){ if(a%b== 2) return a; else return recurse (a+b,a-b); } What is the return value for the call recurse(7,2) ? Write down the tracing steps
Question
Consider the following recursive method: public static int recurse (int a,int b){ if(a%b== 2) return a; else return recurse (a+b,a-b); } What is the return value for the call recurse(7,2) ? Write down the tracing steps
Solution
The method recurse(7,2) is called.
Step 1: Check if a%b == 2. In this case, 7%2 is not equal to 2, so we move to the else statement.
Step 2: In the else statement, we call the recurse method again, but this time with new parameters: a+b and a-b. This means we call recurse(7+2, 7-2), which simplifies to recurse(9, 5).
Step 3: Again, we check if a%b == 2. This time, 9%5 is not equal to 2, so we move to the else statement again.
Step 4: We call the recurse method again with new parameters: a+b and a-b. This means we call recurse(9+5, 9-5), which simplifies to recurse(14, 4).
Step 5: We check if a%b == 2. This time, 14%4 is equal to 2, so we return a, which is 14.
So, the return value for the call recurse(7,2) is 14.
Similar Questions
the correct answerWhat is Recursion in Java?
Select the correct answerWhat will be the output of the following Java program? class recursion { int func (int n) { int result; if (n == 1) return 1; result = func (n - 1); return result; } } class Output { public static void main(String args[]) { recursion obj = new recursion() ; System.out.print(obj.func(5)); } }Options 12010None of the mentioned
In a recursive function, when is the recursive call executed?
In recursion, what is the role of a recursive call?
def recurse(a): if (a == 1): print(a) else: recurse(a)recurse(1)Question 6Select one:a.0b.1c.no outputd.RuntimeError: maximum recursion depth exceeded
Upgrade your grade with Knowee
Get personalized homework help. Review tough concepts in more detail, or go deeper into your topic by exploring other relevant questions.