Question: /* Array expander: Write a function that accepts an int array as argument. The function should create a new array that is n times the

/* Array expander: Write a function that accepts an int array as argument. The function should create a new array that is n times the size of the argument array, where n is a user input. The function should copy the contents of the argument array to the new array, and initialize the unused elements of the second array with 0. The function should return a pointer to the new array */

#include using namespace std;

const int NUM_ELEM = 5; int* expandArray(int *a, int expFactor);

int main() {

int origArr[NUM_ELEM], n;

for (int i = 0; i < NUM_ELEM; ++i) origArr[i] = i;

cout << "Original array" << endl;

for (int i = 0; i < NUM_ELEM; ++i) cout << origArr[i] << " ";

cout << endl; cout << "By how many times should the new array grow" << endl;

cin >> n;

int *newArr = expandArray(origArr, n);

for (int i = 0; i < n*NUM_ELEM; ++i) cout << newArr[i] << " ";

cout << endl;

delete [] newArr; return 0;

}

int* expandArray(int *a, int expFactor) {

// Your code goes here }

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!