Python 分段利潤提成

2022-09-13 18:33:10 字數 1775 閱讀 2481

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

lia = [1000000, 600000, 400000, 200000, 100000, 0]

lir = [0.01, 0.015, 0.03, 0.05, 0.075, 0.1]

sa = 1650000

com = 0

for i in range(6):

if sa > lia[i]:

com += (sa - lia[i]) * lir[i]

print('(%s - %s) * %s' % (sa, lia[i], lir[i]), com, (sa - lia[i]) * lir[i])

sa = lia[i]

執行結果:

('(1650000 - 1000000) * 0.01', 6500.0, 6500.0)

('(1000000 - 600000) * 0.015', 12500.0, 6000.0)

('(600000 - 400000) * 0.03', 18500.0, 6000.0)

('(400000 - 200000) * 0.05', 28500.0, 10000.0)

('(200000 - 100000) * 0.075', 36000.0, 7500.0)

('(100000 - 0) * 0.1', 46000.0, 10000.0)

解法二:

lia = [0,100000, 200000, 400000, 600000, 1000000, float('inf')]

lir = [0.1, 0.075, 0.05, 0.03, 0.015, 0.01]

sa = 3000000

for i in range(7):

if lia[i] > sa:

out = (sa - lia[i-1]) * lir[i-1]

print('(%s - %s) * %s = %s' % (sa, lia[i-1], lir[i-1], out))

break

def fun(x, z=0) :

if x == 0:

return z

z += (lia[x] - lia[x-1]) * lir[x-1]

print('(%s - %s) * %s = %s' % (lia[x], lia[x-1], lir[x-1], (lia[x] - lia[x-1]) * lir[x-1]

))return fun(x-1,z)

print(fun(i-1) + out)

執行結果

(3000000 - 1000000) * 0.01 = 20000.0

6(1000000 - 600000) * 0.015 = 6000.0

(600000 - 400000) * 0.03 = 6000.0

(400000 - 200000) * 0.05 = 10000.0

(200000 - 100000) * 0.075 = 7500.0

(100000 - 0) * 0.1 = 10000.0

59500.0

分段利潤提成

18.企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可可提成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於40萬元的部分,可提成3 60萬到100萬...

python菜鳥教程 企業根據利潤提成發獎金

今天跟朋友們一起學習 企業根據利潤提成發獎金 的問題。當利潤 i 低於或等於10萬元時,獎金可提10 當利潤高於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可提成7.5 當20萬到40萬之間時,高於20萬元的部分,可提成5 當40萬到60萬之間時高於40萬元的部分,...

程式2 獎金根據利潤提成

程式2 題目 企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高 於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可可提 成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於 40萬元的部分,可提成3 6...