c++ 公司员工

c++ 公司员工,第1张

c++ 公司员工

Problem Description
某公司有老板Boss、雇员Employee、小时工HourlyWorker和营销人员CommWorker,
每类人员都有姓名、职工编号、年龄、性别、工资等数据。
他们的薪金计算方法如下:
老板实行年薪制,如一年15万;
雇员按月计酬,方法是,基本工资+奖金;
小时工按工作时间计算报酬,方法是,工作小时每小时单价;
营销人员按月计酬,方法是,基本工资+销售利润
5%。
设计计算各类人员报酬的程序,打印输出各位工作人员的所有数据。
//你的代码将被嵌在这里
int main() {
Person* pb=new Boss(“张华”, “N001”, 30, “男”);
pb->print();
Person* pe=new Employee(“李明”, “N002”, 40, “男”, 900,1000);
pe->print();
Person* ph=new HourlyWorker(“向力”, “N003”, 38, “男”,30,60);
ph->print();
Person* pc=new CommWorker(“刘晓云”, “N004”, 28, “女”,1600,10000);
pc->print();
delete pb;
delete pe;
delete ph;
delete pc;
return 0;
}

Sample Output
老板
姓名:张华
职工编号:N001
年龄:30
性别:男
年薪:15万元
雇员
姓名:李明
职工编号:N002
年龄:40
性别:男
基本工资:900元
奖金:1000元
月薪:1900元
小时工
姓名:向力
职工编号:N003
年龄:38
性别:男
每小时单价:60元
工作时间:30小时
报酬:1800元
营销人员
姓名:刘晓云
职工编号:N004
年龄:28
性别:女
基本工资:1600元
销售利润:10000元
月酬:2100元

#include 
using namespace std;
#include

class Person
{
public:
    string name, id, sex;
    int age;
   // Person(){}
    virtual void print() = 0;

};

class Boss :public Person//老板
{
public:
    Boss(string a, string b, int c, string d)
    {
        name = a;
        id = b;
        age = c;
        sex = d;
    }

    void print()
    {
        cout << "********************老板********************" << endl;
        cout << "姓名:" << name << endl;
        cout << "职工编号:" << id << endl;
        cout << "年龄:" << age<< endl;
        cout << "性别:" << sex << endl;
        cout << "年薪:" << "15万元" << endl;
    }
};

class Employee :public Person//雇员
{
public:
    int jiben, jiangjin;
    Employee(string a, string b, int c, string d, int e, int f)
    {
        name = a;
        id = b;
        age = c;
        sex = d;
        jiben = e;
        jiangjin = f;
    }
    void print()
    {
        cout << "********************雇员********************" << endl;
        cout << "姓名:" << name << endl;
        cout << "职工编号:" << id << endl;
        cout << "年龄:" << age << endl;
        cout << "性别:" << sex << endl;
        cout << "基本工资:" << jiben << "元" << endl;
        cout << "奖金:" << jiangjin << "元" << endl;
        cout << "月薪:" << jiben + jiangjin << "元" << endl;
    }
};

class HourlyWorker :public Person//小时工
{
public:
    int time, price;
    HourlyWorker(string a, string b, int c, string d, int e, int f)
    {
        name = a;
        id = b;
        age = c;
        sex = d;
        time = e;
        price = f;
    }
    void print()
    {
        cout << "********************小时工********************" << endl;
        cout << "姓名:" << name << endl;
        cout << "职工编号:" << id << endl;
        cout << "年龄:" << age << endl;
        cout << "性别:" << sex << endl;
        cout << "每小时单价:" << price << "元" << endl;
        cout << "工作时间:" << time << "小时" << endl;
        cout << "报酬:" << price * time << "元" << endl;
    }
};

class CommWorker :public Person//营销人员
{
public:
    int jibeng, lirun;
    CommWorker(string a, string b, int c, string d, int e, int f)
    {
        name = a;
        id = b;
        age = c;
        sex = d;
        jibeng = e;
        lirun = f;
    }
    void print()
    {
        cout << "********************营销人员********************" << endl;
        cout << "姓名:" << name << endl;
        cout << "职工编号:" << id << endl;
        cout << "年龄:" << age << endl;
        cout << "性别:" << sex << endl;
        cout << "基本工资:" << jibeng << "元" << endl;
        cout << "销售利润:" << lirun << "元" << endl;
        cout << "月酬:" << jibeng + lirun * 0.05 << "元" << endl;
    }
};


int main() {
    Person* pb = new Boss("张华", "N001", 30, "男");
    pb->print();
    Person* pe = new Employee("李明", "N002", 40, "男", 900, 1000);
    pe->print();
    Person* ph = new HourlyWorker("向力", "N003", 38, "男", 30, 60);
    ph->print();
    Person* pc = new CommWorker("刘晓云", "N004", 28, "女", 1600, 10000);
    pc->print();
    delete pb;
    delete pe;
    delete ph;
    delete pc;
    return 0;
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5651402.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存