What is direct recursion? Consider the following recursive function: void funcRe
ID: 3726302 • Letter: W
Question
What is direct recursion?
Consider the following recursive function:
void funcRec(int u, char v) //Line 1
{
if (u == 0) //Line 2
cout << v; //Line 3
else //Line 4
{ //Line 5
char w; //Line 6
w = static_cast <char> //Line 7
(static_cast<int>(v) + 1);
funcRec(u - 1, w); //Line 8
} //Line 9
} //Line 10
Now answer the following questions:
Identify the base case.
Identify the general case.
What is the output of the following statement?
funcRec(5, 'A'); .
Consider the following recursive function:
void recFun(int u)
{
if (u == 0)
cout << "Zero! ";
else
{
cout << "Negative ";
recFun(u + 1);
}
}
What is the output, if any, of the following statements?
recFun(8);
recFun(0);
recFun(-2);
Consider the following function:
int test(int x, int y)
{
if (x <= y)
return y - x;
else
return test(x - 1, y + 1);
}
What is the output of the following statements?
cout << test(3, 100) << endl;
cout << test(15, 7) << endl;
Suppose that intArray is an array of integers, and length specifies the number of elements in intArray. Also, suppose that low and high are two integers such that 0 <= low < length, 0 <= high < length, and low < high. That is, low and high are two indices in intArray.
Write a recursive definition that reverses the elements in intArray between low and high.
Explanation / Answer
(a) Base case is the case for which the soluIon can be stated withpout the help of recursion.
In this code there are two such cases; 1. if (u == 0) and 2. else if (u == 1)
For these two cases we can compute the values of v and v+1 respectively.
(b) General case or recursive case is the case for which the soluIon is expressed in terms of a smaller version of itself.
In this code the recursive case is the.
else funcRec(u - 1, v);
(c) Output of funcRec(5, "A") :
Step 1 : goes to funcRec(5, "A")
Step 2: goes to funcRec(4, "A")
Step 3: goes to funcRec(3,"A")
Step 4: goes to funcRec(2,"A")
Step 5: goes to else if (u == 1) and outputs B (v+1 i.e., A+1,B)
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.