编程实现:某航空公司规定在旅游旺季(7~9月),票价九折优惠;在旅游淡季 (3~5 月、11月),票价六折优惠;其他月份,票价八折优惠。根据输入的月份及票价,计算并输出应付金额。
时间: 2024-10-13 08:17:37 浏览: 44
在Python中,可以编写如下的函数来实现这个需求:
```python
from datetime import datetime
def calculate_discounted_fare(month):
base_fare = 1000 # 假设基础票价是1000元
# 定义各时段折扣率
peak_season_discount = 0.9 # 旺季9折
off_peak_season_1_discount = 0.6 # 淡季1第6折
off_peak_season_2_discount = 0.8 # 其他淡季8折
# 将输入的月份转为datetime对象以便于比较
input_date = datetime.strptime(str(month), '%m')
# 根据月份判断折扣
if 7 <= input_date.month <= 9:
discount = peak_season_discount
elif 3 <= input_date.month <= 5 or 11 == input_date.month:
discount = off_peak_season_1_discount
else:
discount = off_peak_season_2_discount
# 计算打折后的票价
discounted_fare = base_fare * discount
return discounted_fare
# 示例输入
month = 7
fare = calculate_discounted_fare(month)
print(f"应付金额:{fare}元")
```
这个函数会根据输入的月份(假设为整数表示月份)计算对应的折扣,并返回打折后的票价。
阅读全文