第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])