//Andres Guzman CSC5 Chapter 6, P. 369, #3
//
/*******************************************************************************
*
* DETERMINE WINNER
* ______________________________________________________________________________
* This program will determine the winning division between 4 divisions
*
* Computation:
*
* division > highest
* ______________________________________________________________________________
* INPUT
*
* northeast = saves northeast function
* northwest = saves northwest function
* southeast = saves southeast function
* southwest = saves southwest function
*
* OUTPUT
* highest = highest sales
* highestdivison = division with highest sales
*******************************************************************************/
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
//
//Prototypes
double getSales(string division); //prototype
void findHighest(double ne, double nw, double se, double sw); //prototype
int main()
{
//
//Northeast Function
cout << "\tNortheast Division"; //Division Name
double northeast = getSales("Northeast"); //Function call and adds value to
//variable
//
//Northwest Function
cout << "\tNorthwest Division"; //Division Name
double northwest = getSales("Northwest"); //Function call and adds value
//to variable.
//
//Southeast Function
cout << "\tSoutheast Division"; //Division Name
double southeast = getSales("Southeast"); //Function call and adds value
//to variable
//
//Southwest Function
cout << "\tSouthwest Division"; //Division Name
double southwest = getSales("Southwest"); //Function call and adds value
//to variable
//
//Function to determine highest division
findHighest(northeast, northwest, southeast, southwest); //Function call
return 0;
}
/*******************************************************************************
* Adding defintion to function getSales. Parameter division allows for strings
* to pass. Will be used to ask user for divisions quarterly sales.
double getSales(string division)
*******************************************************************************/
double getSales(string division)
{
double sales; //Input for sales
cout << "\nDivisions Quarterly Sales Figure: $";
cin >> sales;
cout << endl;
//
//While loop for input validation
while(sales < 0.00) //sales cannot be less than 0
{
cout << "Invalid sales amount, please enter valid amount.";
cout << "\nDivisions Quarterly Sales Figure: $";
cin >> sales;
cout << endl;
}
return sales;
}
/*******************************************************************************
* Adding definition to function findHighest. parameters hold regions value with
* northeast to southwest. Will be used to determine which region has the bigger
* value.
******************************************************************************/
void findHighest(double ne, double nw, double se, double sw)
{
double highest = ne; //gives highest value to northeast
string highestdivision = "Northeast"; //Gives highest division to northeast
//
//If statement to determine which division holds the highest value
if (nw > highest)
{
highest = nw; //Replaces highest with nw
highestdivision = "Northwest"; //Replaces highest division with
//northwest
}
if (se > highest)
{
highest = se; //Replaces highest with se
highestdivision = "Southeast"; //Replaces highest division with
//southeast
}
if (sw > highest)
{
highest = sw; //Replaces highest with se
highestdivision = "Southwest"; //Replaces highest division with
//southwest
}
//
//Output results
cout << "Highest Grossing Division: " << highestdivision;
cout << fixed << setprecision(2) << "\nDivision Sales Figure: $" << highest;
}