企业发放的奖金根据利润提成。

利润(I)低于或等于10万元时,奖金可提10%;

利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;

20万到40万之间时,高于20万元的部分,可提成5%;

40万到60万之间时高于40万元的部分,可提成3%;

60万到100万之间时,高于60万元的部分,可提成1.5%,

高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,计算可发的奖金?

思路分析

通过if语句分区间判断计算即可。

程序实现方法

直接通过if-elif-else结构进行判断即可,用户输入想应的数据后,程序自动匹配相应路径进行计算,判断结构如下所示,最后一个else判断的是用户的非法输入,比如输入的为字母等

if i <= 10:
    cash = i * 0.1
elif 10 < i < 20:
    cash = (i - 10) * 0.075 + 10 * 0.1
......
else:
    print('输入有误')

为了灵活判断用户的输入,通过input接收用户的输入,然后用int转换为整形,最后对这个数进行判断

最后实现如下

将以上算法封装成一个方法main(),在主程序中调用

def main():
# Python资料源码电子书白嫖君羊:708525271
    i = int(input('请输入当月的利润I(万元):'))
    if i <= 10:
        cash = i * 0.1
    elif 10 < i < 20:
        cash = (i - 10) * 0.075 + 10 * 0.1
    elif 20 <= i <= 40:
        cash = (i - 20) * 0.05 + 10 * 0.075 + 10 * 0.1
    elif 40 <= i <= 60:
        cash = (i - 40) * 0.05 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1
    elif 60 <= i <= 100:
        cash = (i - 60) * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1
    elif 100 <= i:
        cash = (
            i - 100
        ) * 0.01 + 40 * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1
    else:
        print('输入有误')
    print('可得奖金(万元)', cash)

主程序调用如下:

if __name__ == '__main__':
    main()

运行后结果如下

请输入当月的利润I(万元):25

可得奖金(万元) 2.0