OJ 1.N

来源:互联网 发布:滴定分析数据意思 编辑:程序博客网 时间:2024/05/18 01:00
/*Description商店销售某一商品,每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,一次购10件以上者,还可以享受9.8折优惠。现已知当天m个销货员销售情况为         销货员号(num)            销货件数(quantity)       销货单价(price)               101                                              5                            23.5               102                                            12                            24.56               103                                           100                           21.5  请编写程序,计算出当日此商品的总销售款sum以及每件商品的平均售价。要求用静态数据成员和静态成员函数。(提示: 将折扣discount,总销售款sum和商品销售总件数n声明为静态数据成员,再定义静态成员函数average(求平均售价)和display(输出结果)。Inputm和m个销货员销售情况Output总销售款sum以及每件商品的平均售价*/#include <iostream>#include <iomanip>using namespace std;class Product{public:    Product() {}     Product(int a,double b,double c):num(a),quantity(b),price(c){}    void total();    static float average();    static void display();private:    static float discount;    static float sum;    static int n;    int num;    double quantity;    double price;};void Product::total(){    if(quantity>10)    {        sum+=price*(1-discount)*quantity*0.98;    }    else    {        sum+=price*(1-discount)*quantity;    }    n+=quantity;}float Product::average(){    return sum/n;}void Product::display(){    cout<<sum<<endl;    cout<<average()<<endl;}float Product::discount=0.05;float Product::sum=0;int Product::n=0;int main(){    const int NUM =10;    Product Prod[10];    int m,i;    cin>>m;    int num;    int quantity;    float price;    for(i=0; i<m; i++)    {        cin>>num>>quantity>>price;        Product temp(num,quantity,price);        Prod[i]=temp;    }    for(i=0; i<m; i++)        Prod[i].total();    cout<<setiosflags(ios::fixed);    cout<<setprecision(2);    Product::display();    return 0;}

0 0
原创粉丝点击