题目:企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?
练习代码:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
i=0
sum=0
#用isdigit()判断是否是数字
while True:
i=input('请输入利润:')
if str(i).isdigit():
break
print('您输入的是非法字符,请重新输入!')
i=int(i)
#用错误机制抛出数据错误判断是否是数字
'''
while True:
try:
i=input('请输入利润:')
i=int(i)
break
except ValueError :
print('您输入的是非法字符,请重新输入!')
'''
arr=[0,100000,200000,400000,600000,1000000]
rat=[0.1,0.075,0.05,0.03,0.015,0.01]
arr.reverse()
rat.reverse()
for j in range(6):
if i>=arr[j]:
sum=rat[j]*(i-arr[j])
for k in range(j+1,6):
sum=sum+arr[k]*rat[k]
break
print('应发奖金总数为:%.2f元'%sum)