Python3經典100道練習題002


題目:企業發放的獎金根據利潤提成。利潤(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,求應發放獎金總數?

 1 x=input('請輸入獲得的利潤:')
 2 x=int(x)
 3 if x<=100000:
 4     y=x*0.1
 5 elif x<=20000:
 6     y=10000+(x-100000)*0.075
 7 elif x<=40000:
 8     y=10000+7500+(x-200000)*0.05
 9 elif x<=60000:
10     y=10000+7500+10000+(x-400000)*0.03
11 elif x<=1000000:
12     y=10000+7500+10000+6000+(x-600000)*0.015
13 elif x>1000000:
14     y=10000+7500+10000+6000+6000+(x-1000000)*0.01
15                               
16                                 
17 print('提成為:',y) 

【網絡高手的方法】

 1 def  get_reward(I):
 2     rewards = 0
 3     if I <= 10:
 4         rewards = I * 0.1
 5 
 6     elif (I > 10) and (I <= 20):
 7         rewards = (I - 10) * 0.075 + get_reward(10)
 8 
 9     elif (I > 20) and (I <= 40):
10         rewards = (I - 20) * 0.05 + get_reward(20)
11 
12     elif (I > 40) and (I <= 60):
13         rewards = (I - 40) * 0.03 + get_reward(40)
14 
15     elif (I > 60) and (I <= 100):
16         rewards = (I - 60) * 0.015 + get_reward(60)
17 
18     else:
19         rewards = get_reward(100) + (I - 100) * 0.01
20 
21     return rewards
22 
23 if __name__ == '__main__':
24     i = 120000
25     print("凈利潤:", i)
26     print("發放的獎金為:", get_reward(i / 10000) * 10000)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM