// ~cs35/scope_0a.cpp

#include "CS35lib.h"

double find_larger_double (double a, double b)
{
	if (b >= a) return b;
	else			return a;
}

int find_larger_int (int a, int b)
{
	if (a>b) return a;
	else		return b;
}

double better_average (int a, int b)
{
	//Counts the higher of 2 scores twice as much as the lower
	int larger, sum;
	double average;
	larger = find_larger_int (a, b);
	
	sum = a + b + larger;
	average = sum/3;
	return average;
}

int main ()
{
	int grade_a1, grade_a2, grade_b1, grade_b2, grade_c1, grade_c2;
	double average_a, average_b, average_c;
	
	cout << "Student A, enter your two grades (integers, 0-100): ";
	cin  >> grade_a1>> grade_a2;
		
	cout << "Student B, enter your two grades (integers, 0-100): ";
	cin  >> grade_b1>> grade_b2;	
	
	cout << "Student C, enter your two grades (integers, 0-100): ";
	cin  >> grade_c1>> grade_c2;
	
	average_a = better_average (grade_a1, grade_a2);
	average_b = better_average (grade_b1, grade_b2);
	average_c = better_average (grade_c1, grade_c2);
	set_decimal(2);
	
	{
		double class_average;	// I discourage this!!
		
		class_average = (average_a+average_b+average_c)/3;
		cout << "The class average is "<<class_average<<".\n";
	}
	cout <<"Your individual averages: "<<setw(8)<<average_a<<", "
			<<setw(8)<<average_b<<", and "<<setw(8)<<average_c<<endl;
			
	return 0;
}
	
