Reference no: EM131691
Write a complete C++ program to do the following:
1. The main program will read in a parameter value n (read this in main). Then it will call a function read2arrays (details below) to read lists of grades into two arrays, which the main program will call test1 and test2 (or some other names of your choice).
2.
a) The main program will call a function isitavalidarray, sending the function the array test1 and n. The function (details below) will determine whether or not the values in this one array are valid, sending an answer back to main.
b) The main program will call this function a second time, sending the test2 array and n.
c) (Back in main:) If one (or both) of the arrays is invalid, the main program will print an error message to cout and skip the rest of the processing. If both arrays are valid, the main program will continue with the rest of the processing (steps 3-7).
3.
a) The main program will call a function findrange, sending the function test1 and n. The function will determine the largest and smallest values in the first n elements of the test1 array and also how far apart they are, which means a positive value representing the difference between the largest and smallest value. The function will print to cout these three values together with appropriate messages (e.g., the largest element in the array is ..., the smallest element in the array is ..., they are ... apart).
b) The main program will do the same for the test2 array.
4. The main program will call a function sum2arrays, sending it the two arrays (test1 and test2) and n; there will also be a fourth parameter, an array called newvalues1. The function will store values in the newvalues1 array. More precisely, for each position, from 0 to n-1, in the newvalues1 array, the function will combine the elements in the two original test arrays at that position, storing the sum of the two elements in the corresponding element of the newvalues1 array.
For example, if the first elements in the two test arrays are 20 and 45, then the sum2arrays function will store 65 in the first element of newvalues1.
5. The main program will call a function subtract2arrays, which will get the same number of parameters as sum2arrays. However, this time the function will store
the difference of the two elements in a new array called newvalues2. For the example above, the function will store -25 in the first element of newvalues2.
6. The main program will call the findrange function two more times, to work on the two new arrays constructed in the sum2arrays and subtract2arrays functions.
7. The main program will call one final function printresults to print everything out neatly to an output file. This function will print an overall heading, then column headings mentioning the two original test arrays and the two newly computed arrays. Underneath the column headings will be the actual values: first a test1 value, then a test2 value, then a newvalues1 value and finally a newvalues2 value.