/* provide definitions of the functions computeStats, average, and standardDevia
ID: 3625495 • Letter: #
Question
/*provide definitions of the functions computeStats, average, and standardDeviation.
Definitions of the inputScores and printStats functions are provided.
The function computeStats should call the functions average and standardDeviation to do all the calculations.
Your functions must use the formal parameters in their calculations, not the actual parameters (such as score1) used in the function calls in main.
*/
#include <iostream>
#include <cmath>
using namespace std;
void inputScores (double& s1, double& s2, double& s3, double& s4);
// Precondition: The user is ready to enter four numbers.
// Postcondition: The values of s1, s2, s3, and s4 are set to the
// four numbers entered by the user.
void computeStats (double s1, double s2, double s3, double s4,
double& avg, double& stdev);
// Precondition: The parameters s1, s2, s3, and s4 contain four numbers.
// Postcondition: The parameters avg and stdev have been set to
// the average and standard deviation, respectively, of the four numbers.
double average (double s1, double s2, double s3, double s4);
// Precondition: The parameters s1, s2, s3, and s4 contain four numbers.
// Returns the average of s1, s2, s3, and s4.
double standardDeviation (double s1, double s2, double s3, double s4, double avg);
// Precondition: The parameters s1, s2, s3, and s4 contain four real numbers
// and the parameter avg contains the average of the four numbers.
// Returns the standard deviation of s1, s2, s3, and s4.
void printStats (double s1, double s2, double s3, double s4,
double avg, double stdev);
// Precondition: The parameters avg and stdev contain the average
// and standard deviation of the four numbers s1, s2, s3, s4.
// Postcondition: The four numbers along with their average and
// standard deviation have been printed to the screen.
int main ()
{
//
// Variable declarations
//
double score1, score2, score3, score4;
double avg, stdev;
char ans; // answer to "four more numbers?" question
//
// Loop to read 4 scores and print the average and standard
// deviation as many times as the user wishes.
//
do {
//
// Call functions to read in four scores, compute the average
// and standard deviation, and print the results
//
inputScores (score1, score2, score3, score4);
computeStats (score1, score2, score3, score4, avg, stdev);
printStats (score1, score2, score3, score4, avg, stdev);
//
// See if the user wants to test the functions again
//
cout << endl;
cout << "Try four more numbers (y or n)? ";
cin >> ans;
cout << endl;
}
while (ans == 'y' || ans == 'Y');
return 0;
}
//
// Function Definitions
//
void inputScores (double& s1, double& s2, double& s3, double& s4)
{
cout << "Enter four scores, separated by blank spaces: ";
cin >> s1 >> s2 >> s3 >> s4;
cout << endl;
}
//////////////////////////////////////////
void computeStats (double s1, double s2, double s3, double s4, double& avg, double& stdev)
{
avg= average (s1, s2, s3, s4);
stdev= standardDeviation (s1,s2,s3,s4,avg);
}
double average (double s1, double s2, double s3, double s4)
{
return((s1 + s2 + s3 + s4)/4) ;
}
double standardDeviation (double s1, double s2, double s3, double s4, double avg)
{
avg= ((s1 + s2 + s3 + s4)/4);
s1= pow(s1-25,2.0);
s2= pow(s2-25,2.0);
s3= pow(s3-25,2.0);
s4= pow(s4-25,2.0);
sqrt(avg);
//return standardDeviation (pow((sqrt(avg)-avg),2.0));
}
////////////////////////////////////////////////////////////////////
void printStats (double s1, double s2, double s3, double s4, double avg, double stdev)
{
cout << "The average of " << s1 << ", " << s2 << ", " << s3
<< ", and " << s4 << " is " << avg
<< " and the standard deviation is " << stdev << endl;
}
Explanation / Answer
please rate - thanks
#include <iostream>
#include <cmath>
using namespace std;
void inputScores (double& s1, double& s2, double& s3, double& s4);
// Precondition: The user is ready to enter four numbers.
// Postcondition: The values of s1, s2, s3, and s4 are set to the
// four numbers entered by the user.
void computeStats (double s1, double s2, double s3, double s4,
double& avg, double& stdev);
// Precondition: The parameters s1, s2, s3, and s4 contain four numbers.
// Postcondition: The parameters avg and stdev have been set to
// the average and standard deviation, respectively, of the four numbers.
double average (double s1, double s2, double s3, double s4);
// Precondition: The parameters s1, s2, s3, and s4 contain four numbers.
// Returns the average of s1, s2, s3, and s4.
double standardDeviation (double s1, double s2, double s3, double s4, double avg);
// Precondition: The parameters s1, s2, s3, and s4 contain four real numbers
// and the parameter avg contains the average of the four numbers.
// Returns the standard deviation of s1, s2, s3, and s4.
void printStats (double s1, double s2, double s3, double s4,
double avg, double stdev);
// Precondition: The parameters avg and stdev contain the average
// and standard deviation of the four numbers s1, s2, s3, s4.
// Postcondition: The four numbers along with their average and
// standard deviation have been printed to the screen.
int main ()
{
//
// Variable declarations
//
double score1, score2, score3, score4;
double avg, stdev;
char ans; // answer to "four more numbers?" question
//
// Loop to read 4 scores and print the average and standard
// deviation as many times as the user wishes.
//
do {
//
// Call functions to read in four scores, compute the average
// and standard deviation, and print the results
//
inputScores (score1, score2, score3, score4);
computeStats (score1, score2, score3, score4, avg, stdev);
printStats (score1, score2, score3, score4, avg, stdev);
//
// See if the user wants to test the functions again
//
cout << endl;
cout << "Try four more numbers (y or n)? ";
cin >> ans;
cout << endl;
}
while (ans == 'y' || ans == 'Y');
return 0;
}
//
// Function Definitions
//
void inputScores (double& s1, double& s2, double& s3, double& s4)
{
cout << "Enter four scores, separated by blank spaces: ";
cin >> s1 >> s2 >> s3 >> s4;
cout << endl;
}
//////////////////////////////////////////
void computeStats (double s1, double s2, double s3, double s4, double& avg, double& stdev)
{
avg= average (s1, s2, s3, s4);
stdev= standardDeviation (s1,s2,s3,s4,avg);
}
double average (double s1, double s2, double s3, double s4)
{
return((s1 + s2 + s3 + s4)/4) ;
}
double standardDeviation (double s1, double s2, double s3, double s4, double avg)
{
avg= ((s1 + s2 + s3 + s4)/4);
s1= pow(s1-avg,2.0);
s2= pow(s2-avg,2.0);
s3= pow(s3-avg,2.0);
s4= pow(s4-avg,2.0);
return sqrt(s1+s2+s3+s4)/sqrt(3);
//return standardDeviation (pow((sqrt(avg)-avg),2.0));
}
////////////////////////////////////////////////////////////////////
void printStats (double s1, double s2, double s3, double s4, double avg, double stdev)
{
cout << "The average of " << s1 << ", " << s2 << ", " << s3
<< ", and " << s4 << " is " << avg
<< " and the standard deviation is " << stdev << endl;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.