'For this project I have take in 5 scores and output the lowest, highest, and average scores, with the scores being between the numbers 0-10
I have to take 5 different scores from 5 different judges and compute the average, lowest, and highest scores for this assignment. I have most of my code; however, I'm having trouble setting up the 'double getJudgeData(string jname)' function because I cannot change any of the functions given to me by my instructor, otherwise, I would use (double &score). In addition, when I try to add the scores for average_sc in the 'double average_sc' function (before the subtraction) I'm getting an error saying "too few arguments in the function call." How would I go about fixing it?
#include <iostream>
#include <iomanip>
using namespace std;
double getJudgeData(string jname);
double getAverage(double score1, double score2, double score3, double score4, double score5);
double getLowest(double score1, double score2, double score3, double score4, double score5);
double getHighest(double score1, double score2, double score3, double score4, double score5);
int main()
{
//variables
double score1, score2, score3, score4, score5, average_sc, lowest_sc, highest_sc;
// Get input from five judges
score1 = getJudgeData("Judge 1");
score2 = getJudgeData("Judge 2");
score3 = getJudgeData("Judge 3");
score4 = getJudgeData("Judge 4");
score5 = getJudgeData("Judge 5");
average_sc = getAverage(score1, score2, score3, score4, score5);
lowest_sc = getLowest(score1, score2, score3, score4, score5);
highest_sc = getHighest(score1, score2, score3, score4, score5);
cout << "Enter data entry for Judge 1: " << endl;
return 0;
}
double getJudgeData(string jname)
{
do
{
cout << "Data entry for Judge 1. \nScore must be in the range 0-10" << endl;
cin >> jname;
if (jname < 0 || jname > 10)
{
cout << "\nInvalid. Input must be 0-10. Please re-enter score" << endl;
}
} while (jname < 0 || jname > 10);
}
double getAverage(double score1, double score2, double score3, double score4, double score5)
{
double lowest_sc,
highest_sc,
average_sc;
// find lowest
lowest_sc = getLowest(score1, score2, score3, score4, score5);
// find highest
highest_sc = getHighest(score1, score2, score3, score4, score5);
// find/calculate average
average_sc = getAverage(score1, score2, score3, score4, score5) - (highest_sc - lowest_sc) / 3;
cout << setprecision(3) << "Average: " << average_sc << endl;
cout << setprecision(3) << "Lowest: " << lowest_sc << endl;
cout << setprecision(3) << "Highest: " << highest_sc << endl;
return average_sc;
}
double getLowest(double score1, double score2, double score3, double score4, double score5)
{
if (score1 < score2 && score1 < score3 && score1 < score4 && score1 < score5)
{
return score1;
}
else if (score2 < score1 && score2 < score3 && score2 < score4 && score2 < score5)
{
return score2;
}
else if (score3 < score1 && score3 < score2 && score3 < score4 && score3 < score5)
{
return score3;
}
else if (score4 < score1 && score4 < score2 && score4 < score3 && score4 < score5)
{
return score4;
}
else
{
return score5;
}
}
double getHighest(double score1, double score2, double score3, double score4, double score5)
{
if (score1 > score2 && score1 > score3 && score1 > score4 && score1 > score5)
{
return score1;
}
else if (score2 > score1 && score2 > score3 && score2 > score4 && score2 > score5)
{
return score2;
}
else if (score3 > score1 && score3 > score2 && score3 > score4 && score3 > score5)
{
return score3;
}
else if (score4 > score1 && score4 > score2 && score4 > score3 && score4 > score5)
{
return score4;
}
else
{
return score5;
}
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
