Контейнеры Qt, задача.
С помощью контейнера QSet создайте перечень месяцев года. Посчитайте и выведите сколько месяцев вы внесли, а затем выведите названия месяцев, указав, к какому сезону они относятся.
Создайте программу с помощью контейнер QMap, указывающую, сколько людей стоит в очереди на кассе. Изначально в очереди стояло 5 человек, выведите в консоль это значение. Спустя некоторое время открыли вторую кассу, и 2 человека ушли в другую очередь. Выведите в консоль новое число людей в очереди в первой кассе.
Давайте начнем с создания перечня месяцев года с использованием контейнера QSet и определения сезонов для каждого месяца. Затем мы перейдем к использованию контейнера QMap для учета количества людей в очереди на кассе.
Пример создания перечня месяцев и определения сезонов:
cpp
Copy code
#include <QCoreApplication>
#include <QDebug>
#include <QSet>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QSet<QString> months;
months.insert("Январь");
months.insert("Февраль");
months.insert("Март");
months.insert("Апрель");
months.insert("Май");
months.insert("Июнь");
months.insert("Июль");
months.insert("Август");
months.insert("Сентябрь");
months.insert("Октябрь");
months.insert("Ноябрь");
months.insert("Декабрь");
qDebug() << "Всего месяцев:" << months.size();
QMap<QString, QString> seasonMap;
seasonMap["Декабрь"] = seasonMap["Январь"] = seasonMap["Февраль"] = "Зима";
seasonMap["Март"] = seasonMap["Апрель"] = seasonMap["Май"] = "Весна";
seasonMap["Июнь"] = seasonMap["Июль"] = seasonMap["Август"] = "Лето";
seasonMap["Сентябрь"] = seasonMap["Октябрь"] = seasonMap["Ноябрь"] = "Осень";
qDebug() << "Месяцы и их сезоны:";
foreach (const QString &month, months) {
qDebug() << month << " - " << seasonMap[month];
}
return a.exec();
}
Теперь пример использования QMap для учета количества людей в очереди:
cpp
Copy code
#include <QCoreApplication>
#include <QDebug>
#include <QMap>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QMap<QString, int> queueMap;
queueMap["Касса 1"] = 5;
qDebug() << "Людей в очереди на кассе 1:" << queueMap["Касса 1"];
// Спустя некоторое время
queueMap["Касса 2"] = 2; // Открыли вторую кассу и два человека ушли
qDebug() << "Людей в очереди на кассе 1:" << queueMap["Касса 1"];
return a.exec();
}
В этом примере мы используем QMap, чтобы отслеживать количество людей в очереди на каждой кассе. Когда открыли вторую кассу и два человека ушли, мы обновили значение в QMap.