Help with is Computer Science code, written in C++: Requirement: Rewrite all the functions except perm as a non-recursiv

Business, Finance, Economics, Accounting, Operations Management, Computer Science, Electrical Engineering, Mechanical Engineering, Civil Engineering, Chemical Engineering, Algebra, Precalculus, Statistics and Probabilty, Advanced Math, Physics, Chemistry, Biology, Nursing, Psychology, Certifications, Tests, Prep, and more.
Post Reply
answerhappygod
Site Admin
Posts: 899604
Joined: Mon Aug 02, 2021 8:13 am

Help with is Computer Science code, written in C++: Requirement: Rewrite all the functions except perm as a non-recursiv

Post by answerhappygod »

Help with is Computer Science code, written in C++:
Requirement: Rewrite all the functions except perm as a
non-recursive functions
Code:
#include <iostream>
using namespace std;
void CountDown_noRec(int num) {
while (num > 0) {
cout << num << endl;
num = num- 1;
}
cout << "Start n";
}
void CountDown(int num) {
if (num <= 0) {
cout << "Start\n";
}
else {
cout << num << endl;
CountDown(num-1);
}
}
//Fibonacci Sequence Code
int fib(int num) {
if (num == 1 || num == 2)
return 1;
else
return fib(num - 1) + fib(num - 2);
}
int fact(int num) {
if (num == 1)
return 1;
else
return num * fact(num- 1);
}
void perm(string head, string tail) {
if (tail. length() == 1)
cout <<head + tail<< endl;
else
for (int i = tail.length() -1; i>=0; --i)
perm(head + tail, tail.substr(0, i) + tail. substr(i +
1));
}
int bSearch(int n, int num[], int low, int high)
{
int mid = (high + low) / 2;
//System.out.println(lowt" "+ hight" " +mid);
if (n== num[mid])
return mid;
else if (high< low)
return -1;
else if (n< num[mid])
return bSearch(n, num, low, mid -1);
else
return bSearch(n, num, mid + 1, high);
}
/* Determine the greatest common divisor of two numbers, e.g.
GCD(8, 12) =4
*/
int GCD(int n1, int n2) {
int gcd;
if (n1==n2) {
gcd = n1;
}
else {
if (n1 > n2) {
gcd = GCD(n1 - n2, n2) ;
}
else {
gcd = GCD(n1, n2 - n1);
}
}
return gcd;
}
Join a community of subject matter experts. Register for FREE to view solutions, replies, and use search function. Request answer by replying!
Post Reply