E.施工计算

E.施工计算
Time Limit: 1000 MSMemory Limit: 32768 K
Total Submit: 86 (71 users)Total Accepted: 73 (71 users)Special Judge: No
Description
利用面向对象程序设计的方法,实现给定类的设计,并解决如下问题。
   瓦工进行某装修项目,计算项目费用时包括3部分(辅料总价、铺贴瓷砖总价、瓷砖信息)的总价之和。瓷砖信息由瓷砖数量、瓷砖单价组成。
   项目可以分意向性项目(未备料未施工项目)、已完工项目和未开工项目(已备料未施工项目)。分别计算一项意向性项目、一项已完工项目和一项未开工项目的费用总和。
   项目由类WProject表示,瓷砖信息由类ZInfo表示。

Input
一组测试数据。2行输入数据。
   未开工项目输入数据占一行,分别是辅料总价(int型)、瓷砖数量(int型)、瓷砖单价(int型),数据之间由空格分隔。
   已完工项目输入数据占一行,分别是辅料总价(int型)、瓷砖数量(int型)、瓷砖单价(int型)、铺贴单价(int型),数据之间由空格分隔。

Output
输出数据占3行,第1行输出的是意向性项目的费用;第2行输出的是未开工项目的费用;第3行输出的是已完工项目的费用。

Sample Input
100 100 10
100 100 10 5
Sample Output
0
1100
1600
Hint
注意:在给定类的基础上,完善类的设计。给定主函数不能改变。
class ZInfo{
  private:
      int Zcount;//瓷砖数量
      int Zprice;//瓷砖单价
  public:
      ...
};
class WProject{
  private:
      int FLcost;//辅料总价
      ZInfo z;//瓷砖信息
      int PTprice;//铺贴单价
  public:
      ...
};


int main()
{
    WProject yxp;
    int fl,c,p,pt;
    cin>>fl>>c>>p;
    WProject wsgp(fl,c,p);
    cin>>fl>>c>>p>>pt;
    WProject ywgp(fl,c,p,pt);
    cout<<yxp.getTotal()<<endl;
    cout<<wsgp.getTotal()<<endl;
    cout<<ywgp.getTotal()<<endl;
    return 0;


}

#include<iostream>
#include<string>
using namespace std;
class ZInfo {
private:
    int Zcount;//瓷砖数量
    int Zprice;//瓷砖单价
public:
    void set(int a, int b) { Zcount = a, Zprice = b; }
    int amount() { return Zcount; }
    int getPrice()
    {
        return Zcount * Zprice;
    }
};
class WProject {
private:
    int FLcost;//辅料总价
    ZInfo z;//瓷砖信息
    int PTprice;//铺贴单价
public:
    WProject()
    {
        z.set(0, 0), FLcost = 0, PTprice = 0;
    }
    WProject(int a, int b, int c)
    {
        FLcost = a, z.set(b, c), PTprice = 0;
    }
    WProject(int a, int b, int c, int d)
    {
        FLcost = a, z.set(b, c), PTprice = d;
    }
    int getTotal()
    {
        int price = FLcost + z.getPrice() + z.amount() * PTprice;
        return price;
    }
};


int main()
{
    WProject yxp;
    int fl, c, p, pt;
    cin >> fl >> c >> p;
    WProject wsgp(fl, c, p);
    cin >> fl >> c >> p >> pt;
    WProject ywgp(fl, c, p, pt);
    cout << yxp.getTotal() << endl;//意向
    cout << wsgp.getTotal() << endl;//未开工
    cout << ywgp.getTotal() << endl;//已完工
    return 0;


}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值