1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
#include<iostream> //
#include<fstream> // need to read file
#include<string> // string name
using namespace std;
//functions
void CalcScore(double ,double ,double ,double ,double ,double ,double ,double ,char ,ofstream);
int main()
{
//declare variables
ifstream starsearch; //declare fstream to read from file
ofstream results;
string name; //name of person
int number; //number of people to process
int countWhile = 1; //counter for primary while loop
double Score1; //Score number one
double Score2; //Score number two
double Score3; //Score number three
double Score4; //Score number four
double Score5; //Score number five
double maxNumber; //max number
double minNumber; //min number
double final_Score; //average
//read data from file, "Scores.in"
starsearch.open("starsearch.dat");
results.open("results.dat");
starsearch >> number;
//loop to process number of people
while (countWhile <= number){ // if count is greater than or equal to number stop
//read more data from file
//input name and scores
starsearch >> name;
// cout << name << " ";
starsearch >> Score1; //Score number one
starsearch >> Score2; //Score number two
starsearch >> Score3; //Score number three
starsearch >> Score4; //Score number four
starsearch >> Score5; //Score number five
// Display all scores read in
// cout << Score1 << " " << Score2 << " " << Score3 << " " << Score4 << " " << Score5 << endl;
CalcScore(Score1, Score2, Score3, Score4, Score5, name, results);
results << name << " " << final_Score << endl;
// add one to countwhile
countWhile = countWhile + 1;
//cout << endl;
}
// close file
starsearch.close();
//cout << endl << endl;
system("pause"); //Pause
return 0; // end
}
// function CalcScore
void CalcScore(double Score1,double Score2,double Score3,double Score4,double Score5, string name, ofstream results)
{
//local variables
double maxNumber;
double minNumber;
double final_Score;
//Find Max
maxNumber= max(Score1, Score2);
maxNumber= max(maxNumber, Score3);
maxNumber= max(maxNumber, Score4);
maxNumber= max(maxNumber, Score5);
//Find Min
minNumber= min(Score1, Score2);
minNumber= min(minNumber, Score3);
minNumber= min(minNumber, Score4);
minNumber= min(minNumber, Score5);
//add all scores up - max and min / 3
final_Score= (Score1 + Score2 + Score3 + Score4 + Score5 - minNumber - maxNumber) / 3;
// display name and the finalAverage
results << name << " " << final_Score << endl;
}
| |