奖金发放-课后程序(Python程序开发案例教程-黑马程序员编著-第3章-课后作业)

实例2:奖金发放

某企业发放的奖金是根据利润和提成计算的,其规则如表1所示。

表1 奖金发放规则

利润(万元)

奖金提成(%

I≤10

10%

10<I≤20

7.5%

20<I≤20

5%

10<I≤40

3%

40<I≤60

1.5%

60<I≤100

1%

本实例要求编写程序,实现快速计算员工应得奖金的功能。

实例目标

  1. 掌握if-elif语句的使用

实例分析

奖金的薪酬提成与员工产生的利润有直接关系,根据上表可知,该企业将利润提成分为6个档次,不同的档次奖金提成不同,因此可使用Python中条件分支结构来实现该案例。

例如,某个员工的利润为21万元,其奖金计算规则为100000 * 10% + 100000 * 7.5% + 10000 * 5%。

代码实现

profit = float(input("请输入当月利润,单位为元:"))

bonus = 0

if profit <= 100000:

    bonus = 10 * 0.1

elif 100000 < profit <= 200000:

    bonus = 100000 * 0.1 + (profit - 100000) * 0.075

elif 200000 < profit <= 400000:

    bonus = round(100000 * 0.1 + 100000 * 0.075 +

                  (profit - 200000) * 0.05)

elif 400000 < profit <= 600000:

    bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + \

            (profit - 400000) * 0.03

elif 600000 < profit <= 1000000:

    bonus = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + \

            200000 * 0.03 + (profit - 600000) * 0.015

elif profit > 1000000:

    bonus = 100000 * 0.1 + 100000 * 0.075 + \

            200000 * 0.05 + 200000 * 0.03 + \

            400000 * 0.015 + (profit - 1000000) * 0.015

print('当月应发放奖金总数为%s' % bonus)

以上代码首先使用input()函数将接收输入的利润金额转换为float类型,并赋值给变量profit,然后根据变量profit的值按照上表中奖金发放规则进行不同的计算,最后将计算结果使用print()函数进行输出。

代码测试

运行代码,控制台输出结果如下:

请输入当月利润,单位为元:210000

当月应发放奖金总数为18000

你可能感兴趣的:(Python,python,开发语言)