題目:企業發放的獎金根據利潤提成。利潤(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)
這是第一次,以後加油慢慢做筆記。