Python——通過while、for、if—else完成一個小程序
學Python的第三天,鄭老師讓我們寫一個計算車費的小程序,還好之前有寫小程序的基礎,然後很快就完成了,下面是相關內容(^_^)∠※
題目要求:
根據以下信息提示,請幫小明計算,他每月乘坐地鐵支出的總費用:
軌道交通價格調整爲:6公里(含)內3元;6公里至12公里(含)4元;12公里至22公里(含)5元;22公里至32公里 (含)6元;32公里以上部分,每增加1元可乘坐20公里。使用市政交通一卡通刷卡乘坐軌道交通,每自然月內每張卡支出累計滿100元以後的乘次,價格給予8折優惠;滿150元以後的乘次,價格給予5折優惠;支出累計 達到400元以後的乘次,不再享受打折優惠。
要求:
假設每個月,小明都需要上20天班,每次上班需要來回1次,即每天需要乘坐2次同樣路線的地鐵;編寫程序,幫小明完成每月乘坐地鐵需要的總費用
下面是代碼實現:
#-*-coding:utf-8-*-
print(" *****地鐵乘車消費計算計算器*****")
distance = input("請輸入您乘車區間的距離,距離大於0:") #輸入每天去公司乘坐地鐵的距離(公里)
if distance ==0:
print("您還是在原地呆着吧")
exit()
cost = 0.0 #設置變量cost記錄用戶在地鐵上的消費情況(元)
day = 1 #設置變量記錄天數
#while day<=20:
while day<=40: #共20天,來回一共40趟
rate = 0.0 #設置優惠率
# i = 1 #設置while循環,當天數大於20時結束循環
# while i<=2: #設置內嵌while循環,分別計算來回的消費情況,同樣的乘車區間來回的消費可能不一樣
if cost>=100 and cost<150: #設置if-elif-else語句判斷當前消費情況,並設置變量記錄優惠率
rate = 0.8
elif cost>=150 and cost<400:
rate = 0.5
else :
rate = 1.0
if distance<=6: #使用if-elif-else語句判斷用戶的乘車區間,同時在總消費上增加相應費用乘上優惠率
cost+=(3*rate)
elif distance>6 and distance<=12:
cost+=(4*rate)
elif distance>12 and distance<=22:
cost+=(5*rate)
elif distance>22 and distance<=32:
cost+=(6*rate)
else : #乘車超過32公里時候的計算公式
if (distance-32)%20==0:
cost+=((6+(distance-32)/20)*rate)
else:
cost+=((6+(distance-32)/20+1)*rate)
day+=1
print("您當月在地鐵上的花費爲%.2f"%cost) #輸出花費(元),保留兩位小數