写个收费程序怎么写好

时间:2025-01-26 14:05:29 单机游戏

```cpp

include

include

include

using namespace std;

// 定义停车场收费标准

const int SMALLCAR_RULE = 2.5; // 白天每15分钟收费2.5元

const float SMALLCAR_ATT = 3.75; // 夜间每15分钟收费3.75元

const int BIGCAR_RULE = 5; // 白天每15分钟收费5元

const float BIGCAR_ATT = 7.5; // 夜间每15分钟收费7.5元

// 计算停车费用

float calculateParkingFee(const string& carType, const string& entryTime, const string& exitTime) {

int hour = stoi(exitTime.substr(0, 2));

int minute = stoi(exitTime.substr(3, 2));

int startHour = stoi(entryTime.substr(0, 2));

int startMinute = stoi(entryTime.substr(3, 2));

int totalMinutes = hour * 60 + minute;

int startTotalMinutes = startHour * 60 + startMinute;

int duration = totalMinutes - startTotalMinutes;

float fee = 0.0;

if (duration <= 0) {

return fee; // 停车时间不足15分钟,按15分钟计算

}

int firstHour = min(1, duration / 60);

int remainingMinutes = duration % 60;

if (carType == "small") {

fee += firstHour * SMALLCAR_RULE;

if (remainingMinutes > 0) {

fee += (remainingMinutes / 15) * SMALLCAR_ATT;

}

} else if (carType == "big") {

fee += firstHour * BIGCAR_RULE;

if (remainingMinutes > 0) {

fee += (remainingMinutes / 15) * BIGCAR_ATT;

}

}

return fee;

}

int main() {

string carType;

string entryTime;

string exitTime;

cout << "请输入车型 (small/big): ";

cin >> carType;

cout << "请输入进场时间 (YYYY-MM-DD HH:MM): ";

cin >> entryTime;

cout << "请输入出场时间 (YYYY-MM-DD HH:MM): ";

cin >> exitTime;

float fee = calculateParkingFee(carType, entryTime, exitTime);

cout << "停车费用为: " << fee << "元" << endl;

return 0;

}

```

代码说明:

常量定义:

定义了白天和夜间小型车和大型车的收费标准。

计算停车费用函数:

`calculateParkingFee` 函数根据输入的车型、进场和出场时间计算停车费用。

主函数:

从用户输入获取车型、进场和出场时间,并调用 `calculateParkingFee` 函数计算费用,最后输出结果。

使用示例:

输入:

车型:small

进场时间:2023-01-25 08:30

出场时间:2023-01-25 09:15

输出:

停车费用为:2.5元

请根据实际需求调整收费标准和输入输出格式。