打车费用(c++)

该文章提供了一个计算打车费用的C++代码示例,基于不同路程段的计价规则,包括基础起步价、超过2千米后的单价以及超过10千米的加价,同时考虑了等待时间的额外收费。给定路程和等待时间后,程序能计算出总费用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述:

打车计价方案为:2千米以内起步是11元;超过2千米之后按1.8元/千米计价;超过10千米之后在1.8元/千米的基础上加价50%。此外,停车等候则按时间计费:每3分钟加收1元(注:不满3分钟不计费)

输入格式:

第一行,是路程长度,单位千米, 路程0<路程<100。

第二行,等待的时间,单位分钟, 时间0≤时间<100。

输出格式:

输出计价的费用,保留1位小数。

样例输入:

1
3

样例输出:

12.0

时间限制: 1000ms
空间限制: 256MB

代码如下:

#include<bits/stdc++.h>
using namespace std;
int main(){
	double a,s=0;
	long long b;
	cin>>a>>b;
	if(a<=2){
		s=s+11;
	}
	if(a>2&&a<=10){
		s=s+11+1.8*(a-2);
	}
	if(a>10){
		s=s+11+1.8*8+(a-10)*1.8*1.5;
	}
	s=s+b/3;
	printf("%.1lf",s);
	return 0;
}
C++中,如果我们要模拟一个简单的出租车计费系统,区分白天和晚上的收费标准,通常会设计两个不同的计价函数,分别对应白天和晚上的规则。假设白天的费用结构固定,比如起步价加上每公里的单价;而夜晚可能有额外的夜间服务费或里程加价。 以下是一个简化的示例: ```cpp #include <iostream> class Taxi { public: // 白天计费函数 double calculateDayRate(double distance) { const double baseFee = 10; // 起步价 const double perKmFee = 2; // 每公里费用 return baseFee + (distance * perKmFee); } // 晚上计费函数,这里可以设置不同的价格策略 double calculateNightRate(double distance) { const double nightSurcharge = 5; // 夜间服务费 const double nightPerKmFee = perKmFee * 1.2; // 晚上每公里加价 return calculateDayRate(distance) + nightSurcharge; } private: // 实际费用计算可能会考虑实际距离而不是整公里 double calculateRealCost(double distance) { if (distance < 1) { return 0; } int kilometers = static_cast<int>(distance); // 向下取整 double remainingDistance = distance - kilometers; // 非整公里部分 return calculateDayRate(kilometers) + (remainingDistance * perKmFee); } }; int main() { Taxi taxi; double distance = 15; // 示例里程 std::cout << "白天费用: " << taxi.calculateDayRate(distance) << std::endl; std::cout << "晚上费用(假设距离不变): " << taxi.calculateNightRate(distance) << std::endl; return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值