现代生活中,网络约车以其灵活快速的响应和经济实惠的价格给大众提供了高效经济且舒适的出行服务。小明是网络约车的忠实粉丝,他对网络约车如何计费产生了浓厚兴趣,于是他想用所学的Python语言编写一个计费程序,实现根据计价规则,按照所属时段p、路程长度(里程)n和时长计算所要支付的总车费。根据调研,小明收集到了某网络约车(普 通型)的计价规则,如下表所示: 时段 起步价 里程费 时长费 普通时段 ; 8.00元 1.35元/公里 0.20元/分钟 00: 00-06: 30 8.50元 2.40元/公里 0.50元/分钟 06: 30-09:0 8.50元 1.50元/公里 0.45元/分钟 21: 00-24: 0 8.50元 2.40元/公里 (1)起步价包含前3.3公里的里程费,包含前9分钟时长: 2) 里程费与时长费合计不足起步价时,直接按照起步价计费; (3) 实时计价是基于订单服务内容(里程、 时长、时段), 按各种费用项定价标准计算订单价格的计价方式,实际费用由起步价、超过起步价涵盖的里程费与时长费三部分累加而得; (4)时段可转换为浮点数进行运算,且每个时段都是包含起始时刻,不包含结束时刻的。 例如:小明19: 30分乘坐网约车(普 通型)从A地到B地,里程数为10公里, 时长为20分钟, 按照表中的计费规则,小明此次出行应该支付的车费为: 8+ (10-3.3) *1.35+ (20-9) *0.2=19.245元。
时间: 2023-02-06 07:31:49 浏览: 109
聚焦:计算机网络在社会经济生活中有哪些应用.pdf
网络约车的计费方式如下:
1. 先计算出路程所属的时段。
2. 根据时段的起步价,计算出起步价包含的里程费,即前3.3公里的里程费。
3. 计算出超过起步价涵盖的里程费,即(总里程数 - 3.3公里) * 里程费。
4. 计算出时长费,即时长 * 时长费。
5. 计算总车费,即起步价 + 超过起步价涵盖的里程费 + 时长费。
根据给出的计价规则,可以设计如下的程序实现计费功能:
```python
def calculate_fare(p, n, t):
# 计算出路程所属的时段
if p < 6.5:
# 普通时段
start_fare = 8.0
mileage_fare = 1.35
duration_fare = 0.2
elif p < 9.0:
# 06:30-09:00
start_fare = 8.5
mileage_fare = 2.4
duration_fare = 0.5
elif p < 21.0:
# 09:00-21:00
start_fare = 8.5
mileage_fare = 1.5
duration_fare = 0.45
else:
# 21:00-00:00
start_fare = 8.5
mileage_fare = 2.4
duration_fare = 0
# 计算出起步价包含的里程费
covered_mileage_fare = 3.3 * mileage_fare
# 计算出超过起步价涵盖的里程费
excess_mileage_fare = (n - 3.3) * mileage_fare
# 计算出时长费
duration_fare = t * duration_fare
# 计算总车费
fare = start_fare + covered_mileage_fare + excess_
阅读全文