Programming Homework Help

BTE 320 University of Miami C++ Program Computer Programming Task

 

Finish the question to output the same result as appleoutput.txt.

quiz5
question 2

Problem
=======
Apple Inc. is pulling off a feat rarely seen in any industry, much less the cutthroat world of consumer electronics: 
gaining market share while also commanding higher prices.
Led by the even more advanced features of iPhones it keeps introducting, and Apple’s management is now committed to 
analyzing sales even further to track how products are performing in different locations and even at different times 
of the year. 
The Apple regional offices report their monthly sales to Apple’s Headquarters who want to track the sales 
of each product for different periods at each location and sum it up 
in different ways. Apple will pull all sales data from different stores, and already have programs that summarize 
the data for each product per location per month. 
But they want more. They ask you to design an in memory cube that would take the numbers summarized at this level, 
and just do a quick POC (Proof Of Concept) that you could expand on later with more dimensions and with real 
transactional fact  data. 

The problem is that you have only half an hour before your meeting with Tim Cook. 
You must show him something. The VP for sales contacts you and gives you the following example of data, 
and example of output they would like to see, and asks you to use this sample for the POC demo. 
You must write code to make this happen. He even gives another exciting piece of information that 
Tim Cook thinks that Apple should have a product that would help people define multi dimensional 
data structures for analytical purposes – 
he thinks that in this day and age of Analytics and Big Data, Apple must compete with others who already have products to design those types of data structures (He sees no reason why apple should not add a cube design component 
and even a multi dimensional query language to some of their new acquisitions such as Foundation DB). 
You wonder to yourself: Hmmmm!!!…is he trying to compete with Microsoft Analysis Services in their MS SQL Server 
Product? You will think about this later, but right now, you have very little time, and you start thinking with your
immediate manager of what you will demo. He had thought some of it through, though, but he wants you to finish it 
before the demo.
Here is what your manager gives you (numbers should be in millions really), and asks  you to complete some of it 
while his other intern works on some of the easier functions.
YOUR TASK IS TO WRITE FUNCTIONS 1,4,5,6 and 7,8 (5 points each). I did 2,3 for you as a guide.

Produce a file similar to appleoutput.txt, but it does not have to be exact format. But something
that looks nice.
Submission
==========

Don't change main
Complete the functions that you need to complete. The loops is what you need to do.

Compile your code

g++ quiz5q2.cpp -o q5q2
./q5q2 > myapplecube.txt

submit your quiz5q2.cpp and your myapplecube.txt
*/

#include <iostream>
#include <string>
#include <iomanip>

using namespace std;

int const LOCATION_DIM_SZ = 2;
int const TIME_DIM_SZ= 2;
int const PRODUCT_DIM_SIZE= 3;

string Location[]  = {"FL", "TX"};
string Period[]   = {"Jan", "FEB"};
string Product[]   = {"iPhone","iPad","MacBookPro"};
/*1*/
void printSalesDetails(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    int sum =0;
    
    cout<<"Sales Details per Location per Period per Product" <<endl;
    cout<<"================================================="<<endl;
    for 
        
        for 
            
            for 
                
               
                
                
            }
        }
        
    }
    
    cout<<"==================================================="<<endl;
    

}

/*2*/
void printSalesByProduct(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerProduct=0;
    
    cout<<"Sales per Product" <<endl;
    cout<<"================="<<endl;
    for (i=0; i<3;i++){  //product
        salesPerProduct = 0;
        for (j=0 ; j<2;j++){ //location
            
            for (k=0; k<2;k++){ //period
                
                salesPerProduct += sales[j][k][i];
                
            }
        }
        
        cout << "Total Sales for " <<setw(20)<<setfill(' ')<<left<< Product[i] << "t=$" <<setw(9)<<setfill(' ')<<right<<fixed<<salesPerProduct<<setw(10)<<setfill(' ')<<left<<"tmillions"<<endl;
        
    }
    
    
    cout<<endl;
    cout<<"==================================================="<<endl;
    
    
}

/*3*/
void printSalesByLocation(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerLocation=0;
    
    cout<<"Sales per Location" <<endl;
    cout<<"================="<<endl;
    
    
    for (i=0; i<2;i++){  //location
        salesPerLocation = 0;
        for (j=0 ; j<2;j++){ //period
            
            for (k=0; k<3;k++){ //product
                
                salesPerLocation += sales[i][j][k];
                
            }
        }
        
        cout << "Total Sales for " <<setw(20)<<setfill(' ')<<left<< Location[i] << "t=$" <<setw(9)<<setfill(' ')<<right<<fixed<< salesPerLocation<<setw(10)<<setfill(' ')<<left<<"tmillions"<<endl;
        
        
        
    }
    
    
    cout<<endl;
    cout<<"==================================================="<<endl;
    
    
}

/*4*/
void printSalesByPeriod(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    int i(0),j(0),k(0);
    double salesPerPeriod=0;
    
    cout<<"Sales per Period" <<endl;
    cout<<"================="<<endl;
    
   
    
    cout<<endl;
    cout<<"==================================================="<<endl;

    
}
/*5*/
void printSalesPerProductPerLocation(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerProductPerLocation=0;
    
    cout<<"Total Sales per Product per Location" <<endl;
    cout<<"===================================="<<endl;
    
    
   
    
    cout<<endl;
    cout<<"==================================================="<<endl;
    
    
}

/*6*/
void printSalesPerProductPerPeriod(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerProductPerPeriod=0;

    
    cout<<"Total Sales per Product per Period" <<endl;
    cout<<"===================================="<<endl;
    
    
    
    cout<<endl;
    cout<<"==================================================="<<endl;
    
}

/*7*/
void printSalesPerLocationPerPeriod(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerLocationPerPeriod=0;
    
    
    cout<<"Total Sales per Location per Period" <<endl;
    cout<<"===================================="<<endl;
    
    
   
        
        
    cout<<endl;
    cout<<"==================================================="<<endl;

    
}

/*8*/
void printSalesPerPeriodPerLocation(double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]){
    
    int i(0),j(0),k(0);
    double salesPerPeriodPerLocation=0;

    cout<<"Total Sales per Period per Location" <<endl;
    cout<<"===================================="<<endl;
    
    
    
   
    
    cout<<endl;
    cout<<"==================================================="<<endl;
    
    

    
    
}
int main(int argc, const char * argv[]) {
    
    
    double sales[LOCATION_DIM_SZ][TIME_DIM_SZ][PRODUCT_DIM_SIZE]={0};
    
    
    
    sales[0][0][0]=45;
    sales[0][0][1]=8;
    sales[0][0][2]=4;
    sales[0][1][0]=35;
    sales[0][1][1]=10;
    sales[0][1][2]=5;
    sales[1][0][0]=75;
    sales[1][0][1]=15;
    sales[1][0][2]=13;
    sales[1][1][0]=45;
    sales[1][1][1]=17;
    sales[1][1][2]=23.1;
    
    
    printSalesDetails(sales);                       /* 1 */
    printSalesByProduct(sales);                     /* 2 */
    printSalesByLocation(sales);                    /* 3 */
    printSalesByPeriod(sales);                      /* 4 */
    printSalesPerProductPerLocation(sales);         /* 5 */
    printSalesPerProductPerPeriod(sales);           /* 6 */
    printSalesPerLocationPerPeriod(sales);          /* 7 */
    printSalesPerPeriodPerLocation(sales);          /* 8 */

    return 0; 
}
appleoutput.txt:

Sales Details per Location per Period per Product
=================================================
sales for Location FL/Jan/iPhone       	=$    45.00	millions 
sales for Location FL/Jan/iPad         	=$     8.00	millions 
sales for Location FL/Jan/MacBookPro   	=$     4.00	millions 
sales for Location FL/FEB/iPhone       	=$    35.00	millions 
sales for Location FL/FEB/iPad         	=$    10.00	millions 
sales for Location FL/FEB/MacBookPro   	=$     5.00	millions 
sales for Location TX/Jan/iPhone       	=$    75.00	millions 
sales for Location TX/Jan/iPad         	=$    15.00	millions 
sales for Location TX/Jan/MacBookPro   	=$    13.00	millions 
sales for Location TX/FEB/iPhone       	=$    45.00	millions 
sales for Location TX/FEB/iPad         	=$    17.00	millions 
sales for Location TX/FEB/MacBookPro   	=$    23.10	millions 

Sum of Sales for all Apple              =$      295	millions 

===================================================
Sales per Product
=================
Total Sales for iPhone              	=$   200.00	millions 
Total Sales for iPad                	=$    50.00	millions 
Total Sales for MacBookPro          	=$    45.10	millions 

===================================================
Sales per Location
=================
Total Sales for FL                  	=$   107.00	millions 
Total Sales for TX                  	=$   188.10	millions 

===================================================
Sales per Period
=================
Total Sales for Jan               	=$160.00   	millions 
Total Sales for FEB               	=$135.10   	millions 

===================================================
Total Sales per Product per Location
====================================
Total Sales for	iPhone              in	FL     	=$    80.00	millions 
Total Sales for	iPhone              in	TX     	=$   120.00	millions 
Total Sales for	iPad                in	FL     	=$    18.00	millions 
Total Sales for	iPad                in	TX     	=$    32.00	millions 
Total Sales for	MacBookPro          in	FL     	=$     9.00	millions 
Total Sales for	MacBookPro          in	TX     	=$    36.10	millions 

===================================================
Total Sales per Product per Period
====================================
Total Sales for	iPhone              in	Jan    	=$   120.00	millions 
Total Sales for	iPhone              in	FEB    	=$    80.00	millions 
Total Sales for	iPad                in	Jan    	=$    23.00	millions 
Total Sales for	iPad                in	FEB    	=$    27.00	millions 
Total Sales for	MacBookPro          in	Jan    	=$    17.00	millions 
Total Sales for	MacBookPro          in	FEB    	=$    28.10	millions 

===================================================
Total Sales per Location per Period
====================================
Total Sales for	FL                  in	Jan    	=$    57.00	millions 
Total Sales for	FL                  in	FEB    	=$    50.00	millions 
Total Sales for	TX                  in	Jan    	=$   103.00	millions 
Total Sales for	TX                  in	FEB    	=$    85.10	millions 

===================================================
Total Sales per Period per Location
====================================
Total Sales for	Jan                 in	FL     	=$    57.00	millions 
Total Sales for	Jan                 in	TX     	=$   103.00	millions 
Total Sales for	FEB                 in	FL     	=$    50.00	millions 
Total Sales for	FEB                 in	TX     	=$    85.10	millions 

===================================================