C++ Problem Recursion 8)Consider the following recursive function: void funcRec(int u, char v)   {   if (u == 0)   cout << v;   else if (u == 1)   cout << static_cast (static_cast(v) + 1 );   else   funcRec(u - 1, v);   }   Answer the following questions: a.Identify the base case. Explain why b. Identify the general case. Explain why c. What is the output of the following statement? funcRec(5, 'A');

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 1TF
icon
Related questions
Question

C++ Problem Recursion

8)Consider the following recursive function:

void funcRec(int u, char v)

 

{

 

if (u == 0)

 

cout << v;

 

else if (u == 1)

 

cout << static_cast<char>

(static_cast<int>(v) + 1

);  

else

 

funcRec(u - 1, v);

 

}

 

Answer the following questions:

a.Identify the base case. Explain why

b. Identify the general case. Explain why

c. What is the output of the following statement? funcRec(5, 'A');

Expert Solution
Step 1

Answer-a.

Base case in recursive function-In base case solution is directly calculated.
void funcRec(int u, char v) //Line 1
{
if (u == 0) //Line 2 Base case
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

When u=0 it executes if part and it directly give value of v. Therefore Line 2 if (u == 0) is base case because if (u == 0) it gives output.
Answer-b.General case-In general case value smaller values are calculate of the 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 general case
} //Line 9
} //Line 10

Function funcRec(u - 1, w); calls itself and value of u is decrementd by 1 in every call. Therefore Line 8
funcRec(u - 1, w);
 is general case.

trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Declaring and Defining the Function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning