小明坐地铁python实现

题目要求:

单程票价实现:

dancheng.py

class GongLi():
    def __init__(self,km):
        self.km=km

    def each_money(self):
        money = 0
        if self.km>0 and self.km<=6:
            money=3
        elif self.km>6 and self.km<=12:
            money=4
        elif self.km > 12 and self.km <= 22:
            money = 5
        elif self.km > 22 and self.km <= 32:
            money = 6
        elif self.km > 32:
            temp_km=self.km-32
            if temp_km % 20 ==0:
                money=6+temp_km/20
            else:
                money=6+int(temp_km/20)+1
        print(" 单程票价:%d" % money,end='')
        return money

总金额实现:

zongjine.py

from dancheng import GongLi

class Totle_money(GongLi):
    def __init__(self,km):
        GongLi.__init__(self,km)

    def totle_mo(km):
        total_money = 0
        #假设每月乘坐40次
        ech_mon=GongLi.each_money(km)

        for i in range(40):
            if total_money < 100:
                total_money += ech_mon

                # 每自然月内每张卡支出累计满100元以后的乘次,价格给予8折优惠;
            elif total_money >= 100 and total_money < 150:
                total_money += ech_mon * 0.8

                # 满150元以后的乘次,价格给予5折优惠;
            elif total_money >= 150 and total_money < 400:
                total_money += ech_mon * 0.5

                # 支出累计达到400元以后的乘次,不再享受打折优惠。
            elif total_money >= 400:
                total_money += ech_mon
        return total_money

for i in range(1,51):
    print("如果公里数是:%d" % i ,end='')
    tot = Totle_money(i)
    print(" 小明这个月消费%.2f" % tot.totle_mo())

运行结果:

如果公里数是:1 单程票价:3 小明这个月消费116.40
如果公里数是:2 单程票价:3 小明这个月消费116.40
如果公里数是:3 单程票价:3 小明这个月消费116.40
如果公里数是:4 单程票价:3 小明这个月消费116.40
如果公里数是:5 单程票价:3 小明这个月消费116.40
如果公里数是:6 单程票价:3 小明这个月消费116.40
如果公里数是:7 单程票价:4 小明这个月消费148.00
如果公里数是:8 单程票价:4 小明这个月消费148.00
如果公里数是:9 单程票价:4 小明这个月消费148.00
如果公里数是:10 单程票价:4 小明这个月消费148.00
如果公里数是:11 单程票价:4 小明这个月消费148.00
如果公里数是:12 单程票价:4 小明这个月消费148.00
如果公里数是:13 单程票价:5 小明这个月消费169.50
如果公里数是:14 单程票价:5 小明这个月消费169.50
如果公里数是:15 单程票价:5 小明这个月消费169.50
如果公里数是:16 单程票价:5 小明这个月消费169.50
如果公里数是:17 单程票价:5 小明这个月消费169.50
如果公里数是:18 单程票价:5 小明这个月消费169.50
如果公里数是:19 单程票价:5 小明这个月消费169.50
如果公里数是:20 单程票价:5 小明这个月消费169.50
如果公里数是:21 单程票价:5 小明这个月消费169.50
如果公里数是:22 单程票价:5 小明这个月消费169.50
如果公里数是:23 单程票价:6 小明这个月消费189.00
如果公里数是:24 单程票价:6 小明这个月消费189.00
如果公里数是:25 单程票价:6 小明这个月消费189.00
如果公里数是:26 单程票价:6 小明这个月消费189.00
如果公里数是:27 单程票价:6 小明这个月消费189.00
如果公里数是:28 单程票价:6 小明这个月消费189.00
如果公里数是:29 单程票价:6 小明这个月消费189.00
如果公里数是:30 单程票价:6 小明这个月消费189.00
如果公里数是:31 单程票价:6 小明这个月消费189.00
如果公里数是:32 单程票价:6 小明这个月消费189.00
如果公里数是:33 单程票价:7 小明这个月消费211.40
如果公里数是:34 单程票价:7 小明这个月消费211.40
如果公里数是:35 单程票价:7 小明这个月消费211.40
如果公里数是:36 单程票价:7 小明这个月消费211.40
如果公里数是:37 单程票价:7 小明这个月消费211.40
如果公里数是:38 单程票价:7 小明这个月消费211.40
如果公里数是:39 单程票价:7 小明这个月消费211.40
如果公里数是:40 单程票价:7 小明这个月消费211.40
如果公里数是:41 单程票价:7 小明这个月消费211.40
如果公里数是:42 单程票价:7 小明这个月消费211.40
如果公里数是:43 单程票价:7 小明这个月消费211.40
如果公里数是:44 单程票价:7 小明这个月消费211.40
如果公里数是:45 单程票价:7 小明这个月消费211.40
如果公里数是:46 单程票价:7 小明这个月消费211.40
如果公里数是:47 单程票价:7 小明这个月消费211.40
如果公里数是:48 单程票价:7 小明这个月消费211.40
如果公里数是:49 单程票价:7 小明这个月消费211.40
如果公里数是:50 单程票价:7 小明这个月消费211.40

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值