Python 練習實例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,求應發放獎金總數?

方法一:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

i = int(input("淨利潤:"))

if i <= 100000:
    print(i*0.1)
elif i > 100000 and i <= 200000:
    print(100000*0.1+(i-100000)*0.075)
elif i > 200000 and i <= 400000:
    print(100000*0.1+(200000-100000)*0.075+(i-200000)*0.05)
elif i > 400000 and i <= 600000:
    print(100000*0.1+(200000-100000)*0.075+(400000-200000)*0.05+(i-400000)*0.03)
elif i > 600000 and i <= 1000000:
    print(100000*0.1+(200000-100000)*0.075+(400000-200000)*0.05+(600000-400000)*0.03+(i-600000)*0.015)
elif i > 1000000:
    print(100000*0.1+(200000-100000)*0.075+(400000-200000)*0.05+(600000-400000)*0.03+(100000-600000)*0.015+(i-1000000)*0.01)

方法二:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

i = int(input("淨利潤:"))
arr = [1000000,600000,400000,200000,100000,0]
rat = [0.01,0.015,0.03,0.05,0.075,0.1]
r = 0
for idx in range(0,6):
    if i>arr[idx]:
        r+=(i-arr[idx])*rat[idx]
        #print ((i-arr[idx])*rat[idx])
        i=arr[idx]
print (r)

以上實例輸出結果爲:

淨利潤:120000
11500.0

tips:

Python3.x 中 input() 函數接受一個標準輸入數據,返回爲 string 類型。

注意:在 Python3.x 中 raw_input() 和 input() 進行了整合,去除了 raw_input( ),僅保留了input( )函數,其接收任意任性輸入,將所有輸入默認爲字符串處理,並返回字符串類型。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章