北京地鐵月度消費總金額計算(Python版)

  最近業餘時間在學習Python,這是那天坐地鐵時突發奇想,想看看我這一個月的地鐵費共多少錢,因此簡單的構思了下思路,就直接開寫了,沒想到用Python來實現還挺簡單的。    學習

設計思路:測試

  每次乘車正常消費7元,天天乘車2次,每個月工做日乘車22天。spa

  每個月乘車總金額超過100元,下次乘車票價的8折設計

  每個月乘車總金額超過150元,下次乘車票價的5折code

  每個月乘車總金額超過400元,下次乘車不打折orm

代碼:blog

 1 # _*_coding=utf-8 _*_
 2 __author__ = 'Xue'
 3  
 4  
 5 '''
 6 計算北京地鐵每個月乘車票價總金額
 7 version 1.0
 8 默認:每次乘車x元,天天乘車2次,每個月乘車22天
 9  
10 每個月乘車總金額超過100元,下次乘車票價的8折
11 每個月乘車總金額超過150元,下次乘車票價的5折
12 每個月乘車總金額超過400元,下次乘車不打折
13  
14 '''
15  
16 def way():
17     dayMoney=int(raw_input("請輸入您單次乘車正常票價(單位:元):"))
18     dayTime=raw_input("請輸入您天天乘車次數(默認2次):")
19     dayMonth=raw_input("請輸入您每個月乘車天數(默認22天):")
20     dayAllMoney=0.0 #當月乘車總金額
21  
22     #統計各階段乘車的錢數和次數和
23     m100=0.0
24     m150=0.0
25     m400=0.0
26     mmax=0.0
27     t100=0
28     t150=0
29     t400=0
30     tmax=0
31  
32     if dayTime=='':
33         dayTime=2
34     else:
35         dayTime=int(dayTime)  #格式轉換
36  
37     if dayMonth=='':
38         dayMonth=22
39     else:
40         dayMonth=int(dayMonth) #格式轉換
41  
42     dayMonthTime=dayTime*dayMonth #每個月總乘車次數
43     dayNowTime=0  #乘車次數記錄
44  
45     while dayNowTime<=dayMonthTime:
46  
47         if dayAllMoney<=100.0: #總金額小等於100元時,按正常票價收費
48             dayAllMoney+=dayMoney
49             m100+=dayMoney
50             t100+=1
51         elif dayAllMoney<=150.0:  #總金額小等於150時,按正常票價的8折收費
52             dayAllMoney+=dayMoney*0.8
53             m150+=dayMoney*0.8
54             t150+=1
55         elif dayAllMoney<=400.0: #總金額小等於400時,按正常票價的5折收費
56             dayAllMoney+=dayMoney*0.5
57             m400+=dayMoney*0.5
58             t400+=1
59         else :  #總金額超過400元,按正常票價收費
60             dayAllMoney+=dayMoney
61             mmax+=dayMoney
62             tmax+=1
63  
64  
65         dayNowTime+=1 #乘車次數++
66  
67     return (dayMonth,dayTime,dayMoney,dayAllMoney,m100,t100,m150,t150,m400,t400,mmax,tmax)
68  
69  
70 if __name__== '__main__':
71     (dm,dt,dy,dam,m100,t100,m150,t150,m400,t400,mmax,tmax)= way()
72  
73     print("\n")
74     print ("您該月共乘坐北京地鐵 {0} 天,天天 {1} 次,單次乘車消費{2}元,共消費 {3:.2f} 元。".format(dm,dt,dy,dam))
75     print("\n")
76     print("月總消費額度100元階段內: 共乘坐 {0} 次,階段消費 {1:.2f} 元,共計 {2:.2f} 元。".format(t100,m100,m100))
77     print("月總消費額度150元階段內: 共乘坐 {0} 次,階段消費 {1:.2f} 元,共計 {2:.2f} 元。".format(t150,m150,m100+m150))
78     print("月總消費額度400元階段內: 共乘坐 {0} 次,階段消費 {1:.2f} 元,共計 {2:.2f} 元。".format(t400,m400,m100+m150+m400))
79     print("月總消費額度超過400元階段內: 共乘坐 {0} 次,階段消費 {1:.2f} 元,共計 {2:.2f} 元。".format(tmax,mmax,m100+m150+m400+mmax))
80     print("\n")

測試結果:utf-8

相關文章
相關標籤/搜索