/* ACTION 10-1(ACT10_01.CPP) */ //PREPROCESSOR DIRECTIVES #include //FOR cin AND cout #include using namespace std; //REQUIRED WHEN INCLUDING iostream //PITCHER CLASS DECLARATION class Pitcher { //PUBLIC MEMBERS public: //CONSTRUCTOR THAT INITIALIZES ALL PITCHER DATA EXCEPT WIN % Pitcher(string n = "",string t = "", int w = 0, int l = 0, double era = 0.0); //SET PITCHER STATS TO USER ENTRIES void setStats(); //GET AND DISPLAY STATS void getStats(); //PRIVATE MEMBERS private: string name; //PITCHER'S NAME string team ; //PITCHER'S TEAM int wins; //NUMBER OF WINS int losses; //NUMBER OF LOSSES double winPercent; //WIN PERCENTAGE double era; //EARNED RUN AVERAGE //UTILITY FUNCTION TO CALCULATE winPercent void calculateWinPercent(); }; // END Pitcher CLASS //MAIN FUNCTION int main() { //DEFINE PITCHER OBJECT Pitcher JohnSmoltz; //CALL PITCHER FUNCTIONS JohnSmoltz.setStats(); JohnSmoltz.getStats(); //RETURN return 0; }//END main() //PITCHER CLASS FUNCTION IMPLEMENTATIONS //CONSTRUCTOR THAT INITIALIZES ALL PITCHER DATA EXCEPT //WIN % Pitcher :: Pitcher(string n,string t, int w, int l, double era) { name = n; team = t; wins = w; losses = l; this -> era = era; calculateWinPercent(); }//END Pitcher(string,string,int,int,double) //SET PITCHER STATS TO USER ENTRIES void Pitcher :: setStats() { //PROMPT AND READ PITCHER STATS cout << "Enter the pitcher's name: "; cin >> ws; getline(cin,name); cout << "Enter the pitcher's team: "; cin >> ws; getline(cin,team); cout << "Enter the number of wins for " << name << ": "; cin >> wins; cout << "Enter the number of losses for " << name << ": "; cin >> losses; cout << "Enter the era " << name << ": "; cin >> era; calculateWinPercent(); }//END setStats() //GET AND DISPLAY STATS void Pitcher :: getStats() { cout << "\nPitcher Name: " << name << endl; cout << "\tTeam: " << team << endl; cout << "\tNumber of wins: " << wins << endl; cout << "\tNumber of losses: " << losses << endl; cout << "\tWinning percentage: " << winPercent << endl; cout << "\tERA: " << era << endl; }//END getStats() void Pitcher :: calculateWinPercent() { if ((wins + losses) == 0) winPercent = 0.0; else winPercent = (double)wins/(wins + losses) * 100; //TYPE CASTING }//END calculateWinPercent