answer this using c++ Part 1: Write a function that receives, as arguments, a pointer to a double array, as well as the number of elements in the array (int). The function must use pointer operations (no block notation such as arr[i]) and calculate the standard deviation of the elements in the array. The function returns the standard deviation to the calling statement. Due to possible rounding or floating-point arithmetic errors, round the result to 4 decimal places. Use the formula below. Each summation can be done with a for-loop. To calculate the square root you may use the header file. You may use the following code:   float data[] = {11.2, 2.4, 3.13, 16.4, 5.8, 9.22, 4.9, 10.5, 6.5, 2.99};   int N = sizeof(data) / sizeof(float);   Part 2: Write a function that receives, as arguments, a pointer to a double array, as well as the number of elements in the array (int). The function must use pointer operations (no block notation such as arr[i]) and must display each element in the array.   Part 3: Write a function that receives, as arguments, a pointer to a double array, as well as a pointer to the number of elements in the array. The function must use pointer operations (no block notation such as arr[i]) to remove a value from the array. The user must enter the index to remove. The number of elements in the array must be updated. The function must be of the void type and thus may not return a value.  Afterward, in the main function, display the array with the function from part 2 and calculate the new standard deviation with the function from part 1. Tip: to remove an element from an array, all the following elements are shifted up to replace the previous element. The number of ele   Template: double std_dev( ??? ); void print_array( ??? ); void remove_one( ??? ); int main() {   double previous_std_dev;   double new_std_dev;   double data[] = {11.2, 2.4, 3.13, 16.4, 5.8, 9.22, 4.9, 10.5, 6.5, 2.99};   int N = sizeof(data) / sizeof(double);   previous_std_dev = std_dev( ??? );   print_array( ??? );   remove_one( ??? );   print_array( ??? );   new_std_dev = std_dev( ??? ); }   Example Input and Output: 11.20  2.40  3.13  16.40  5.80  9.22  4.90  10.50  6.50  2.99 Enter an index to remove (0-9): 3 Removed the value '16.40'. 11.20  2.40  3.13  5.80  9.22  4.90  10.50  6.50  2.99 The standard deviation of the array was: 4.249367 It is now: 3.138312

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter12: Points, Classes, Virtual Functions And Abstract Classes
Section: Chapter Questions
Problem 1TF
icon
Related questions
Question

answer this using c++

Part 1:

Write a function that receives, as arguments, a pointer to a double array, as well as the number of elements in the array (int). The function must use pointer operations (no block notation such as arr[i]) and calculate the standard deviation of the elements in the array. The function returns the standard deviation to the calling statement. Due to possible rounding or floating-point arithmetic errors, round the result to 4 decimal places.

Use the formula below. Each summation can be done with a for-loop. To calculate the square root you may use the <math.h> header file.

You may use the following code:

  float data[] = {11.2, 2.4, 3.13, 16.4, 5.8, 9.22, 4.9, 10.5, 6.5, 2.99};
  int N = sizeof(data) / sizeof(float);

 

Part 2:

Write a function that receives, as arguments, a pointer to a double array, as well as the number of elements in the array (int). The function must use pointer operations (no block notation such as arr[i]) and must display each element in the array.

 

Part 3:

Write a function that receives, as arguments, a pointer to a double array, as well as a pointer to the number of elements in the array. The function must use pointer operations (no block notation such as arr[i]) to remove a value from the array. The user must enter the index to remove. The number of elements in the array must be updated. The function must be of the void type and thus may not return a value. 

Afterward, in the main function, display the array with the function from part 2 and calculate the new standard deviation with the function from part 1.

Tip: to remove an element from an array, all the following elements are shifted up to replace the previous element. The number of ele

 

Template:

double std_dev( ??? );
void print_array( ??? );
void remove_one( ??? );

int main()
{
  double previous_std_dev;
  double new_std_dev;

  double data[] = {11.2, 2.4, 3.13, 16.4, 5.8, 9.22, 4.9, 10.5, 6.5, 2.99};
  int N = sizeof(data) / sizeof(double);

  previous_std_dev = std_dev( ??? );
  print_array( ??? );
  remove_one( ??? );
  print_array( ??? );
  new_std_dev = std_dev( ??? );
}

 

Example Input and Output:

11.20  2.40  3.13  16.40  5.80  9.22  4.90  10.50  6.50  2.99

Enter an index to remove (0-9): 3

Removed the value '16.40'.

11.20  2.40  3.13  5.80  9.22  4.90  10.50  6.50  2.99

The standard deviation of the array was: 4.249367
It is now: 3.138312

Expert Solution
steps

Step by step

Solved in 5 steps with 1 images

Blurred answer
Knowledge Booster
Functions
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr