// Fig. 9.6: SalesPerson.cpp // Member functions for class SalesPerson. #include using std::cout; using std::cin; using std::endl; using std::fixed; #include using std::setprecision; #include "SalesPerson.h" // include SalesPerson class definition // initialize elements of array sales to 0.0 SalesPerson::SalesPerson() { for ( int i = 0; i < 12; i++ ) sales[ i ] = 0.0; } // end SalesPerson constructor // get 12 sales figures from the user at the keyboard void SalesPerson::getSalesFromUser() { double salesFigure; for ( int i = 1; i <= 12; i++ ) { cout << "Enter sales amount for month " << i << ": "; cin >> salesFigure; setSales( i, salesFigure ); } // end for } // end function getSalesFromUser // set one of the 12 monthly sales figures; function subtracts // one from month value for proper subscript in sales array void SalesPerson::setSales( int month, double amount ) { // test for valid month and amount values if ( month >= 1 && month <= 12 && amount > 0 ) sales[ month - 1 ] = amount; // adjust for subscripts 0-11 else // invalid month or amount value cout << "Invalid month or sales figure" << endl; } // end function setSales // print total annual sales (with the help of utility function) void SalesPerson::printAnnualSales() { cout << setprecision( 2 ) << fixed << "\nThe total annual sales are: $" << totalAnnualSales() << endl; // call utility function } // end function printAnnualSales // private utility function to total annual sales double SalesPerson::totalAnnualSales() { double total = 0.0; // initialize total for ( int i = 0; i < 12; i++ ) // summarize sales results total += sales[ i ]; // add month i sales to total return total; } // end function totalAnnualSales /************************************************************************** * (C) Copyright 1992-2005 by Deitel & Associates, Inc. and * * Pearson Education, Inc. All Rights Reserved. * * * * DISCLAIMER: The authors and publisher of this book have used their * * best efforts in preparing the book. These efforts include the * * development, research, and testing of the theories and programs * * to determine their effectiveness. The authors and publisher make * * no warranty of any kind, expressed or implied, with regard to these * * programs or to the documentation contained in these books. The authors * * and publisher shall not be liable in any event for incidental or * * consequential damages in connection with, or arising out of, the * * furnishing, performance, or use of these programs. * **************************************************************************/