您的位置:首页 > 编程语言 > C语言/C++

C++ Primer Plus第六版编程练习10.4解答

2015-04-07 23:48 357 查看
SALES.h

#ifndef SALES_H_INCLUDED
#define SALES_H_INCLUDED

namespace SALES
{
const int QUARTERS=4;
class Sales
{
private:
double sales[QUARTERS];
double average;
double max;
double min;
public:
Sales ();
Sales(const double ar[],int n);
~Sales() {};
void showSales() const;
};
}

#endif // SALES_H_INCLUDED


SALES.cpp
#include "SALES.h"
#include <iostream>

namespace SALES
{
using namespace std;

Sales::Sales(const double ar[],int n)
{
double sum=0.0;
max=ar[0],min=ar[0];
for(int i=0; i<n; i++)
{
sales[i]=ar[i];
sum+=ar[i];
if(ar[i]>max)
max=ar[i];
if(ar[i]<min)
min=ar[i];
}
average=sum/n;
}

Sales::Sales()
{
cout<<"Enter sales: ";
cin>>sales[0];
double sum=sales[0];
max=sales[0],min=sales[0];
for(int i=1;i<QUARTERS;i++)
{
cout<<"Enter sales: ";
cin>>sales[i];
sum+=sales[i];
if(sales[i]>max)
max=sales[i];
if(sales[i]<min)
min=sales[i];
}
average=sum/QUARTERS;
}

void Sales::showSales() const
{
for(int i=0;i<QUARTERS;i++)
cout<<"sales #"<<i+1<<" : "<<sales[i]<<endl;
cout<<"average: "<<average<<endl;
cout<<"max: "<<max<<endl;
cout<<"min: "<<min<<endl;
cout<<endl;
}
}


main.cpp
#include <iostream>
#include "SALES.h"

int main()
{
using namespace SALES;

std::cout<<"non-interactive version\n";
double array[QUARTERS]= {234.3,342.33,345.5,454.23};
Sales s1(array,QUARTERS);
s1.showSales();

std::cout<<"interactive version\n";
Sales s2;
s2.showSales();

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: