秋期末商科综合练习2

第1关:计算美团电单车费用

编程要求
美团电单车的收费标准如下:单次骑行起步价为20分钟2元,超出20分钟后,每10分钟1元。(不足10分钟按10分钟计算)需要定点还车。如果不在规定区域内停车需额外支付车辆管理费,若在停车点外还车,需要额外支付10元停车管理费,若在运营区外停车,需额外支付30元停车管理费。补充函数cf,根据输入的行驶时间(分钟)和停车位置(字符型),计算并返回费用(1表示停车点内,2表示停车点外,3表示运营区外)

def cf(s, t):
    # 代码开始
    if s == '1':
        f = 2 + max(0, ((t - 20) + 9) // 10)
    elif s == '2':
        f = 2 + max(0, ((t - 20) + 9) // 10) + 10
    elif s == '3':
        f = 2 + max(0, ((t - 20) + 9) // 10) + 30
    return f
    # 代码就结束
x = eval(input("请输入行驶时间"))
y = input("请输入停车位置")
# 代码开始
fy = cf(y, x)
# 代码结束
print("租车费{}元".format(fy))

第2关:计算货拉拉运费

 编程要求货拉拉的收费标准如下如果是小面包车,收费标准就是5公里是30元,超出部分每公里的收费标准是3元;如果是中面包车,5公里收费标准是50元,超出部分每公里4元;如果是小货车,5公里收费是55元,超出部分每公里4元;如果是中货车,5公里收费标准是100元,超出来的部分每公里5元。编写程序,输入货车类型(字符型,1表示小面包车,2表示中面包车,3表示小货车,4表示中货车)和距离,补充函数fys和主程序中调用函数的语句,实现费用的计算。

def fyjs(lx, s):
    # 代码开始
    if lx == '1':
        if s <= 5:
            f = 30
        else:
            f = 30 + (s - 5) * 3
    elif lx == '2':
        if s <= 5:
            f = 50
        else:
            f = 50 + (s - 5) * 4
    elif lx == '3':
        if s <= 5:
            f = 55
        else:
            f = 55 + (s - 5) * 4
    elif lx == '4':
        if s <= 5:
            f = 100
        else:
            f = 100 + (s - 5) * 5
    return f
    # 代码就结束
x = input("请输入货车类型")
y = eval(input("请输入距离"))
# 代码开始
fy = fyjs(x, y)
# 代码结束

print("费用{}元".format(fy))

第3关:天气类型字典统计

2022-02-28,雨夹雪,10,20,西北风 2
2022-03-01,阴,4,13,北风 22022-03-02,晴,7,16,北风 2
2022-03-03,小雨,11,18,东北风,22022-03-04,多云,11,16,西北风 1
2022-03-05,小雨,11,17,北风 1
2022-03-06,阴到小雨,7,13,西北风 1
2022-03-07,晴,8,20,西北风22022-03-08921东南风2
编写程序,遍历文件,将每种天气类型的天数记录在字典tqzd中

注意:天气类型中有雪的按雪来统计(例如雨夹雪)
否则,天气类型中有雨的按雨来统计(例如阴到小雨、小雨等)
其他,按实际天气来统计(例如晴、阴)
输入天气类型,程序输出其对应天数(该代码源程序已包含)

tqzd = {}
f1 = open("test/tq2022.csv")

# 代码开始
for line in f1:
    parts = line.strip().split(',')
    if len(parts) < 2:
        continue
    weather = parts[1]
    if '雪' in weather:
        weather = '雪'
    elif '雨' in weather:
        weather = '雨'
    if weather in tqzd:
        tqzd[weather] += 1
    else:
        tqzd[weather] = 1
# 代码结束


f1.close()
x = input("天气类型")
print(tqzd[x])

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值