天天看點

python練習執行個體之二 利潤分紅計算

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

程式分析:請利用數軸來分界,定位。注意定義時需把獎金定義成長整型。

以下是我的code,很笨。

<pre name="code" class="html">i = int(input('淨利潤:'))
arr = [0, 10 , 20 , 40, 60, 100]
rat = [0.1, 0.075, 0.05, 0.03, 0.015, 0.01]
r = 0
for idx in range(5, -1, -1):
    if i>arr[idx]:
        r+=(i-arr[idx])*rat[idx]
        print ((i-arr[idx])*rat[idx])
        i=arr[idx]
print (r)
           

以下是給的答案,确實想法不一樣,簡單。

i = int(input('淨利潤:'))
arr = [0, 10 , 20 , 40, 60, 100]
rat = [0.1, 0.075, 0.05, 0.03, 0.015, 0.01]
r = 0
for idx in range(5, -1, -1):
    if i>arr[idx]:
        r+=(i-arr[idx])*rat[idx]
        print ((i-arr[idx])*rat[idx])
        i=arr[idx]
print (r)
           

這是第一次,以後加油慢慢做筆記。