Question: Given the following recursive function: string mystery(string s) { if (s == ) return ; if (toupper(s[ 0 ]) == 'A' || toupper(s[ 0 ])

Given the following recursive function:

string mystery(string s) { if (s == "") return ""; if (toupper(s[ 0 ]) == 'A' || toupper(s[ 0 ]) == 'E' || toupper(s[ 0 ]) == 'I' || toupper(s[ 0 ]) == 'O' || toupper(s[ 0 ]) == 'U') { return s.substr(0, 1) + mystery(s.substr(1, s.size() - 1)); } return "" + mystery(s.substr(1, s.size() - 1)); } 

Show all the calls to the function and what each one returns to its predecessor.

string result = mystery(Omar);

Call #

mystery(Omar) returns [ ] to result

mystery( ) returns [ ] to Call [ ]

mystery( ) returns [ ] to Call #2 [ ]

mystery( ) returns [ ] to Call [ ]

mystery() returns to Call #4.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!