Python练习:每月乘坐地铁费用

北京地铁交通价格调整为:6公里(含)内3元;6公里至12公里(含)4元;12公里至22公里(含)5元;22公里至32公里(含)6元;32公里以上部分, 每增加1元可乘坐20公里。使用市政交通一卡通刷卡乘坐轨道交通,每自然月内每张卡支出累计满100元以后的乘次价格给予8折优惠;满150元以后的乘次价格给予5折优惠,假设每个月,小明都需要上20天班,每次上班需要来回1次,即每天需要乘坐2次同样路线的地铁。

编写程序,从键盘获取每次上班的距离,帮小明计算每月的总花费(小明使用市政交通一卡通乘车,结果保存小数点后两位)。

思路:每个月上二十天班,一天坐两次地铁,也就是说每个月要坐40次地铁,每坐一次地铁总费用都会改变,因此我们要用到循环语句,令初始天数i=1(不可能一天班都不上),每一次循环i做自加,知道i>40,也就是上完班了就退出循环

x = eval(input("请输入单次乘坐地铁的公里数(Km):"))
i=1#天数
money=0#总金额
while i <= 40:
    if i==0:
        break
    if money<100:
        if mile <= 6:
            money += 3
        elif mile <= 12:
            money += 4
        elif mile <= 22:
            money += 5
        elif mile <= 32:
            money += 6
        elif mile > 32:
            money += (6+(mile-32)//20)
    elif money >= 100 and money < 150:
        if mile <= 6:
            money += 3*0.8
        elif mile <= 12:
            money += 4*0.8
        elif mile <= 22:
            money += 5*0.8
        elif mile <= 32:
            money += 6*0.8
        elif mile > 32:
            money += (6+(mile-32)//20)*0.8
    elif money >= 150:
        if mile <= 6:
            money += 3*0.5
        elif mile <= 12:
            money += 4*0.5
        elif mile <= 22:
            money += 5*0.5
        elif mile <= 32:
            money += 6*0.5
        elif mile > 32:
            money += (6+(mile-32)//20)*0.5
    i+=1
    if i > 40:
        break
print("这个月坐地铁共花了:%0.2f"%money)
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值