你可以在代码中添加以下部分来实现所需的功能:
int maxWaitingTime = 0; // 最大等待时间
int totalWaitingTime = 0; // 总等待时间
for (int i = 0; i < 4; i++) { // 遍历所有餐桌队列
while (!tables[i].empty()) {
Customer currentCustomer = tables[i].front();
tables[i].pop();
int waitingTime = currentCustomer.arrivalTime - currentCustomer.eatingTime;
maxWaitingTime = max(maxWaitingTime, waitingTime); // 更新最大等待时间
totalWaitingTime += waitingTime; // 累加总等待时间
}
}
cout << "最大等待时间:" << maxWaitingTime << endl;
double averageWaitingTime = static_cast<double>(totalWaitingTime) / n;
cout << "平均等待时间:" << fixed << setprecision(2) << averageWaitingTime << endl;
将上述代码段放置在原有代码的最后即可。它会计算每个顾客的等待时间,找出最大的等待时间并输出,然后计算平均等待时间并输出。
内容由零声教学AI助手提供,问题来源于学员提问