Help with assignment. ( class, array, members)

A corporation has six divisions, each responsible for sales to different geographic locations.
Design a DivSales class that keeps sales data for a division, with the following
members:
• An array with four elements for holding four quarters of sales figures for the division
• A private static variable for holding the total corporate sales for all divisions for the
entire year.
• A member function that takes four arguments, each assumed to be the sales for a quarter.
The value of the arguments should be copied into the array that holds the sales data.
The total of the four arguments should be added to the static variable that holds the total yearly corporate sales.

•A function that takes an integer argument within the range of 0 to 3.

The argument is to be used as a subscript into the division quarterly sales array.

The function should return the value of the array element with that subscript.

Write a program that creates an array of six DivSales objects. The program should ask the user to enter the sales for four quarters for each division.

After the data is entered, the program should display a table showing the division sales for each quarter.

The program should then display the total corporate sales for the year.

Input Validation: Only accept positive values for quarterly sales figures.


*** I cant figure it out the total corporate sales, and the member function for quartely on each division***

#include <iomanip>
#include <cmath>
#include <iostream>
using namespace std;

class DivSales
{

private:
float corpSales;
float divSales;

public:
DivSales() {divSales = 0;}

void QuarterlySales (float q1=0, float q2=0, float q3=0, float q4=0);
float QSales [4];


void addDivSales (float s)
{ divSales += s; corpSales += divSales;}
float getDivisionSales () {return divSales;}
float getCorpSales () { return corpSales;}
};




// float DivSales::corpSales = 0;

int main ()

{

//float DivSales::corpSales = 0;


DivSales divisions [6];

int count;

for (count = 0; count < 6; count ++)
{
float sal = 0;

cout << "Enter the sales for each division ";

cout << (count + 1) << " : ";
while (sal < 1)
{
cin >> sal;
divisions[count].addDivSales(sal);
if (sal < 1)
cout << "Enter a positive number: \n";
}
}

cout << setprecision(2);
cout << showpoint << fixed;
cout << "\nHere are the division sales: \n";

for (count = 0; count < 6; count++)
{
cout << "Division " << (count + 1) << " $ ";
cout << divisions[count].getDivisionSales() << endl;

}

cout << "Total corporate sales:\t$ ";
cout << divisions[0].getCorpSales() << endl;

return 0;


}
corpSales needs to be static, so put static before float in its declaration.

Also, your divSales array should be private, and your Quartarly Sales function should be how it is accessed by everything except the class itself. QuarterlySales should take only 1 integer argument and return the sales for that quarter from the array.
Last edited on
Thank You for replying...

yes i did the static float corpSales, but i get ( unresolved external symbol "private: static float DivSales::corpSales") and I don't get the QuarterlySales part.. do you mean declare an int with 4 variables? and then returning the total sales? Im sorry im begginer
Topic archived. No new replies allowed.