5.26

设计并实现计算不同职称的教师工资

题目描述】设计教师接口,该接口包含教师工资计算方法。应用(一)中的高校人员信息包,设计不同职称的教师类:教授,副教授,讲师,教师的基本信息包括姓名、性别、出生年月、职称、课时工作量等属性。注意学校对教师每月工资的计算规定如下:固定工资+课时补贴;教授的固定工资为5000元,每个课时补贴50元;副教授的固定工资为3000元,每个课时补贴30元;讲师的固定工资为2000元,每个课时补贴20元。

程序中定义各种教师类的对象,并编写程序求这些教师的月工资。

【源代码程序】

class Teacher:

    def __init__(self, name, gender, birth, zhicheng, work):

        self.name = name

        self.gender = gender

        self.birth = birth

        self.zhicheng = zhicheng

        self.work = work

    def income(self):

        if self.zhicheng == "教授":

            return self.work * 50 + 5000

        elif self.zhicheng == "副教授":

            return self.work * 30 + 3000

        elif self.zhicheng == "讲师":

            return self.work * 20 + 2000

    def display(self):

        print(self.name + self.zhicheng + "的工资:" + str(Teacher.income(self)))


class Professor(Teacher):

    def __init__(self):
        Teacher.__init__(self, name='Taylor', gender='女', birth="1989-12-13", zhicheng="教授", work=5)


class Professor_Fu(Teacher):

    def __init__(self):
        Teacher.__init__(self, name='Charlie', gender='男', birth="1990-05-07", zhicheng="副教授", work=5)


class Instructor(Teacher):

    def __init__(self):
        Teacher.__init__(self, name='Tom', gender='男', birth="1998-02-06", zhicheng="讲师", work=5)


p = Professor()

p.display()

pf = Professor_Fu()

pf.display()

i = Instructor()

i.display()
posted @ 2024-06-02 20:24  vvvcutee  阅读(3)  评论(0编辑  收藏  举报