Python100道经典练习题:第2题 利润提成问题

题目:企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?
分析:用会计速算法来计算

# -*- coding: utf-8 -*-
profit = eval(input('请输利润金额:'))
quickcal1 = [100000 * (0.1 - 0.075), 200000 * (0.075 - 0.05),
    400000 * (0.05 - 0.03), 600000 * (0.03 - 0.015),
    1000000 * (0.015 - 0.01)]
quickcal2 = []
quickcal2.append(quickcal1[0])

for i in range(1,len(quickcal1)):
    quickcal2.append(quickcal2[i-1] + quickcal1[i])
comm = 0

if profit <= 100000:
    comm = profit * 0.1
elif profit <= 200000:
    comm = quickcal2[0] + profit * 0.075
elif profit <= 400000:
    comm = quickcal2[1] + profit * 0.05
elif profit <= 600000:
    comm = quickcal2[2] + profit * 0.03
elif profit <= 1000000:
    comm = quickcal2[3] + profit * 0.015
else:
    comm = quickcal2[4] + profit * 0.01
print(comm)

此题采用了会计计算纳税金额时候的速算扣除法求解。方法讲解可见:http://www.canet.com.cn/mingci/655099.html

发布了46 篇原创文章 · 获赞 1 · 访问量 1559

猜你喜欢

转载自blog.csdn.net/AntInSnow/article/details/104903712
今日推荐