题目描述
2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费。同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾数小于0.25元的舍去、不小于0.25元且小于0.75元的计为0.5元、不小于0.75元的进为1元。编写一个函数,计算退票费,假定退票时间距离开车时间在48小时以上。函数原型如下:
double CancelFee(double price);
本题如果是C/C++代码提交,只需要提交CancelFee函数的定义部分,提交其它内容,编译出错。
输入
输入一个实数,表示火车票票面价格。
输出
输出一个实数,表示退票费,结果保留一位小数。
样例输入
106
样例输出
5.5
示例代码
def cancelfee(x):
cancelfee = str(float(x)*0.05)
cancelfee_split = cancelfee.split(".")
after_dot = float("0."+cancelfee_split[1])
if after_dot < 0.25:
return int(cancelfee_split[0])
elif 0.25<=after_dot<0.75:
return int(cancelfee_split[0])+0.5
elif 0.75<=after_dot:
return int(cancelfee_split[0])+1
n = input()
result = cancelfee(n)
print("%.1f"%(result))
本文介绍了一个计算火车票退票费的C/C++函数,涉及票价计算规则和四舍五入到5角的方法。
725





