Python-100 练习题 02
2019年第 10 篇文章,總第 34 篇文章
練習題2 的網址:
http://www.runoob.com/python/python-exercise-example2.html
Example-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,求應發放獎金總數?
思路
這道題目可以根據每個獎金發放區間來分界,先分別定義兩個數組,一個數組是存放每個區間獎金的提成比例,記為rat;另一個數組是記錄每個發放區間的上邊界,表示當超過該邊界時候,直接利用上邊界乘以該區間的提成比例,例如對于在 10 萬元以下的這個區間,就是上邊界為 10 萬,然后超過后,該區間發放獎金就是100000*0.1。
然后我們先考慮利潤超過 100 萬的情況,依次降低利潤,對應每種情況。
代碼實現
def pay_award():profit = int(input('凈利潤:'))arr = [1000000, 600000, 400000, 200000, 100000, 0]rat = [0.01, 0.015, 0.03, 0.05, 0.075, 0.1]r = 0for idx in range(0, 6):if profit > arr[idx]:# 當前區間的利潤r += (profit - arr[idx]) * rat[idx]print('current award=', (profit - arr[idx]) * rat[idx])# 重置下一個區間起始獎金數量profit = arr[idx]return r簡單的測試例子:
# 利潤是 11000 凈利潤:11000 current award= 1100.0 award= 1100.0# 利潤是 1100000 (110萬) 凈利潤:1100000 current award= 1000.0 current award= 6000.0 current award= 6000.0 current award= 10000.0 current award= 7500.0 current award= 10000.0 award= 40500.0源代碼在:
https://github.com/ccc013/CodesNotes/blob/master/Python_100_examples/example2.py
歡迎關注我的微信公眾號–機器學習與計算機視覺,或者掃描下方的二維碼,大家一起交流,學習和進步!
往期精彩推薦
Python-100 練習系列
- Python-100 | 練習題 01 & 列表推導式
學習筆記
- 機器學習入門系列(1)–機器學習概覽
- [GAN學習系列] 初識GAN
- [GAN學習系列2] GAN的起源
- [GAN學習系列3]采用深度學習和 TensorFlow 實現圖片修復(上)
數學學習筆記
- 程序員的數學筆記1–進制轉換
- 程序員的數學筆記2–余數
- 程序員的數學筆記3–迭代法
Github項目 & 資源教程推薦
- [Github 項目推薦] 一個更好閱讀和查找論文的網站
- [資源分享] TensorFlow 官方中文版教程來了
- 必讀的AI和深度學習博客
- [教程]一份簡單易懂的 TensorFlow 教程
- [資源]推薦一些Python書籍和教程,入門和進階的都有!
總結
以上是生活随笔為你收集整理的Python-100 练习题 02的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序大佬和菜鸟的区别,太准确了!
- 下一篇: python中cumsum_在pytho