Write a C++ program that reads data from a data file called “temp.dat”. The data file contains a maximum of 31 daily integer temperature values for a city. Your program should continue displaying the following menu until the user selects exit (option No. 6).
Head of the data
Tail of the data
Calculate average
Calculate standard deviation
Count days
Exit
Your program should use arrays to store the data and should have at least the following user defined functions:
Head_data: Print the first M elements of the data. The positive integer M is provided by the user and passed to the function as an argument together with the data array and its number of elements. Note that if M is greater than the number of elements in the file, Head_data function will print all elements.
Tail_data: Print the last M elements of the data. The positive integer M is provided by the user and passed to the function as an argument together with the data array and its number of elements Note that if M is greater than the number of elements in the file, Tail_data function will print all elements.
Average_temp: Calculates and returns the average temperature of the records. It takes as arguments the data array and its number of elements (see EQ 1).
Std_dev: Calculates and returns the standard deviation of the temperatures records. It takes as arguments the data array and its number of elements ( see EQ 2).
Count_days: In addition to the data array and its number of elements, it takes two additional parameters (lower_temp & higher_temp) and returns the number of days where temperature was recorded between the two values (inclusive).
Equations you might need:
μ=1/N ∑_(i=1)^N▒x_i
σ=√(1/N ∑_(i=1)^N▒(x_i-μ)^2 )
Your program should display an error message if wrong option is entered. The output of your program should look like the sample runs shown in Figure 1 – Figure 8.
Note: You are required to submit your algorithm for this assignment.