企業發放的獎金根據利潤提成。 利潤(I)低於或等於10萬元時,獎金可提10%; 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10%提成,高於10萬元的部分,可提成7.5%; 20萬到40萬之間時,高於20萬元的部分,可提成5%; 40萬到60萬之間時高於40萬元的部分,可提成3%; 60萬 ...
企業發放的獎金根據利潤提成。
利潤(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,計算可發的獎金?
思路分析
通過if語句分區間判斷計算即可。
程式實現方法
直接通過if-elif-else結構進行判斷即可,用戶輸入想應的數據後,程式自動匹配相應路徑進行計算,判斷結構如下所示,最後一個else判斷的是用戶的非法輸入,比如輸入的為字母等
if i <= 10: cash = i * 0.1 elif 10 < i < 20: cash = (i - 10) * 0.075 + 10 * 0.1 ...... else: print('輸入有誤')
為了靈活判斷用戶的輸入,通過input接收用戶的輸入,然後用int轉換為整形,最後對這個數進行判斷
最後實現如下
將以上演算法封裝成一個方法main(),在主程式中調用
def main(): # Python資料源碼電子書白嫖君羊:708525271 i = int(input('請輸入當月的利潤I(萬元):')) if i <= 10: cash = i * 0.1 elif 10 < i < 20: cash = (i - 10) * 0.075 + 10 * 0.1 elif 20 <= i <= 40: cash = (i - 20) * 0.05 + 10 * 0.075 + 10 * 0.1 elif 40 <= i <= 60: cash = (i - 40) * 0.05 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1 elif 60 <= i <= 100: cash = (i - 60) * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1 elif 100 <= i: cash = ( i - 100 ) * 0.01 + 40 * 0.015 + 20 * 0.03 + 20 * 0.05 + 10 * 0.075 + 10 * 0.1 else: print('輸入有誤') print('可得獎金(萬元)', cash)
主程式調用如下:
if __name__ == '__main__': main()
運行後結果如下
請輸入當月的利潤I(萬元):25
可得獎金(萬元) 2.0