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 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
 
  | 
#include <iostream>
#include <iomanip>
using namespace std;
void getGrades(double*, int);
void sort(double*, int);
double average(double*, int);
void displayGrades(double*, int, double);
int main()
{
	int size = 100;
	double test_average;
	cout << "Please enter a number of scores to be graded: " << endl;
	cin >> size;
	double test_scores[100];
	getGrades(test_scores, size);
	test_average = average(test_scores, size);
	sort(test_scores, size);
	displayGrades(test_scores, size, test_average);
	return 0;
}
	// Get the test scores
	void getGrades(double *score, int size)
	{
		for (int count = 0; count < size; count++)
		{
			do
			{
				cout << "What is the score of test " << (count + 1) << ":  " << endl;
				cin >> score[count];
				if (score[count] < 0)
				{
					cout << "Score must be a positive number. Please enter another score " << endl;
				}
			} while (score[count] < 0);
		}
	}
	// Calculate the average of the scores
	double average(double *score, int numScores)
	{
		double avg_score;
		double total = 0;
		for (int count = 0; count < numScores; count++)
		{
			total += score[count];
		}
		avg_score = (total / numScores);
	
		return avg_score;
	}
	// Sort scores in ascending order
	void sort(double *score, int size)
	{
		bool swap;
		double temp;
		do
		{
			swap = false;
			for (int count = 0; count < (size - 1); count++)
			{
				if (score[count] > score[count + 1])
				{
					temp = score[count];
					score[count] = score[count + 1];
					score[count + 1] = temp;
					swap = true;
				}
			}
		} while (swap);
	}
	// Display sorted grades
	void displayGrades(double *score, int size, double avg)
	{
		cout << "Below are the sorted scores ";
		cout << "Scores";
		cout << "-----------" << endl;
		for (int count = 0; count < size; count++)
		{
			cout << score[count] << endl;
		}
		// Display average
		cout << "Score Average:  " << avg << endl;
}
  |  |