C++ Exercises: Create an array taking two middle elements from a given array of integers of length even
C++ Basic Algorithm: Exercise-94 with Solution
Create Array from Middle Elements of Even-Length Array
Write a C++ program to create an array taking two middle elements from a given array of integers of length even.
Sample Solution:
C++ Code :
#include <iostream> // Including input-output stream header file
using namespace std; // Using standard namespace
static int *test(int numbers[], int arr_length) // Function definition that returns a pointer to an array
{
static int r_array[] = { numbers[arr_length / 2 - 1], numbers[arr_length / 2] }; // Creating a new array with elements from the middle of 'numbers' array
return r_array; // Returning a pointer to the newly created array
}
int main () {
int *p, i; // Declaring pointer variable p and integer i
int nums1[] = { 1, 5, 7, 9, 11, 13 }; // Initializing array nums1 with values
cout << "Original array:" << endl;
int arr_length = sizeof(nums1) / sizeof(nums1[0]); // Calculating length of array nums1
for ( i = 0; i < arr_length; i++ ) { // Loop to print elements of the nums1 array
cout << nums1[i] << " "; // Printing elements of the nums1 array
}
p = test(nums1, arr_length); // Calling the test function and storing the returned pointer in p
cout << "\nNew array: " << endl; // Printing a message
arr_length = sizeof(p) / sizeof(p[0]); // Recalculating length of array pointed by p (This may not work as intended, see explanation below)
for ( i = 0; i < arr_length; i++ ) { // Loop to print elements of the array pointed by p
cout << *(p + i) << " "; // Printing elements of the array pointed by p
}
return 0; // Returning 0 to indicate successful completion of the program
}
Sample Output:
Original array: 1 5 7 9 11 13 New array: 7 9
Visual Presentation:
Flowchart:
C++ Code Editor:
Contribute your code and comments through Disqus.
Previous: Write a C++ program to check a given array of integers, length 3 and create a new array. If there is a 5 in the given array immediately followed by a 7 then set 7 to 1.
Next: Write a C++ program to create a new array swapping the first and last elements of a given array of integers and length will be least 1.
What is the difficulty level of this exercise?
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/cpp-exercises/basic-algorithm/cpp-basic-algorithm-exercise-94.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics