// // standdev.cpp // // This program reads up to maxLength integers // into an array and computes their standard // deviation. // #include #include // // maxLength is the most integers the program can manage. // const int maxLength = 20; int fillArray(int A[]); double averageArray(int A[], int length); double standardDevArray(int A[], int length, double average); double square(double number); int main() { int A[maxLength]; int length; double average; double standardDeviation; length = fillArray(A); average = averageArray(A, length); standardDeviation = standardDevArray(A, length, average); cout << "The standard deviation of the data set is " << standardDeviation << endl; return 0; } // // fillArray fills the array A with up // to maxLength integers. It stops // prompting when maxLength numbers // have been entered or the user enters 0. // It returns the number of integers // actually entered. // int fillArray(int A[]) { int index = 0, enteredValue; cout << "Please enter a positive value (0 to stop): "; cin >> enteredValue; while (index < maxLength && enteredValue != 0) { A[index] = enteredValue; index++; cout << "Please enter a positive value (0 to stop): "; cin >> enteredValue; } return index; } // // averageArray computes the average of // the integers in the array A, ie, // the values in array locations A[0] to // A[length-1]. // double averageArray(int A[], int length) { int index; int sum = 0; for (index = 0; index < length; index++) { sum += A[index]; } return sum / double(length); } // // standardDevArray computes the standard // deviation of the integers in the array A, // given the average of those values. // double standardDevArray(int A[], int length, double average) { int index; double sum = 0; for (index = 0; index < length; index++) { sum += square(A[index] - average); } return sqrt(sum); } // // square returns the square of its // parameter. // double square(double number) { return number * number; }