企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?(这题做的不好)
方法一:这个方法太笨了,细节部分也没有注意
l=int(input("请输入所售利润"))
if l<=10:
reward=l*0.1
elif l<=20 and l>10:
reward=1+(l-10)*0.075
elif l<=40 and l>20:
reward=1+0.75+(l-20)*0.5
elif l<=60 and l>40:
reward=1+0.75+1+(l-40)*0.03
elif l>60 and l<=100:
reward=1+0.75+1+0.6+(l-60)*0.015
else:
reward=1+0.75+1+0.6+0.6+(l-100)*0.01
print(reward)
方法二:
l=float(input("请输入所售利润"))
a=[0,10,20,40,60,100]
rise=[0,0.1,0.075,0.05,0.03,0.015,1]
reward=0
for i in range(0,6):
if l>a[i]:
reward=reward+(a[i]-a[i-1])*rise[i]
else:
reward=reward+(l-a[i-1])*rise[i]
break
print(reward)