//Andrew Alspaugh                 CS1A               Chapter 7. P. 444. #4
 
/******************************************************************************
Process Monkey Food Consumed
______________________________________________________________________________
The Purpose of this program is to display the average monkey food per day,
the least, and the most monkey food consumed by an individual monkey on any day
______________________________________________________________________________
INPUT
	numMonkeys
	numDays
	monkeyFood[][]
 
OUTPUT
	foodTotal    (to calculate average)
	foodAverage
	lowest
	most
*******************************************************************************/
#include <iostream>
using namespace std;
 
int main() 
{
//DATA DICTIONARY
	const int numMonkeys = 3;					//INPUT	
	const int numDays = 7;						//INPUT
	int monkeyFood[numMonkeys][numDays];		//INPUT
 
	int foodTotal = 0;                          //OUTPUT
	int foodAverage = 0;						//OUTPUT
	int lowest = 0;								//OUTPUT
	int most = 0;								//OUTPUT
 
 
//INPUT
 
//Outer Loop Per Monkey // Inner Loop Per Day // While Loop Input Validation //
 
	for(int monkey = 0; monkey < numMonkeys; monkey++)
	{
		cout << "Enter daily food for monkey " << monkey + 1 << " :" << endl;
 
		for (int day = 0; day < numDays; day++)
		{
			cout << "Enter food for day " << day + 1 << " :" << endl;
			cin >> monkeyFood[monkey][day];
 
			while (monkeyFood[monkey][day] < 0)
			{
				cout << "INVALID: Enter food for day greater than 0" << endl;
				cin >> monkeyFood[monkey][day];
			}
 
		}
		cout << endl << endl;
	}
 
	//PROCESS
 
//Calculate Average//
 
	for(int monkey = 0; monkey < numMonkeys; monkey++)
	{
		for (int day = 0; day < numDays; day++)
		foodTotal += monkeyFood[monkey][day];
	}
	foodAverage = foodTotal / (numMonkeys * numDays);
 
//Calculate Least// Amount of Food on Any Day
 
	lowest = monkeyFood[0][0];
    for(int monkey = 0; monkey < numMonkeys; monkey++)
    {
    	for(int day = 0; day < numDays; day++)
    	{
    		if (monkeyFood[monkey][day] < lowest)
    		lowest = monkeyFood [monkey][day];
    	}
    }
 
//Calculate Most// Amount of Food on Any Day
 
	most = monkeyFood[0][0];
	for(int monkey = 0; monkey < numMonkeys; monkey++)
	{
		for(int day = 0; day < numDays; day++)
		{
			if(monkeyFood[monkey][day] > most)
			most = monkeyFood[monkey][day];
		}
	}
	//OUTPUT
 
	//Average
	cout << "average food a day per monkey was : " << foodAverage << endl;
 
	//Least
	cout << "The least food for any day was : " << lowest << endl;
 
	//Most
	cout << "The most food for any day was : " << most << endl;
 
	return 0;
}