Задачи на дату/время в C++. Часть 3
Дан список строк с датами в формате год-месяц-день:
std::vector<std::string> dates = {"2024-01-15", "2024-02-20", "2024-03-25"};
Преобразуйте все строки в std::chrono::year_month_day и найдите самую позднюю дату.
Дан массив строк с временем в формате часы:минуты:
std::string times[] = {"09:30", "14:15", "18:45"};
Преобразуйте в std::chrono::hh_mm_ss, добавьте 45 минут к каждому и выведите результат.
Даны две даты в формате год-месяц-день:
std::string date1 = "2024-01-01";
std::string date2 = "2024-12-31";
Вычислите количество дней между этими датами.
Дан список годов:
std::vector<int> years = {2020, 2021, 2022, 2023, 2024};
Используя цикл, определите какие годы являются високосными.
Дана дата в формате год-месяц-день:
std::string dateStr = "2024-05-15";
Преобразуйте в std::chrono::year_month_day и найдите последний день этого месяца.
Дан список дней недели (числами от 1 до 7):
std::vector<int> weekDays = {1, 3, 5, 7};
Преобразуйте числа в названия дней недели и выведите их.
Дана строка с датой и временем:
std::string dateTimeStr = "2024-07-20T14:30:00";
Преобразуйте в std::chrono::system_clock::time_point и вычтите 3 часа.
Дан список месяцев (числами от 1 до 12):
std::vector<int> months = {1, 4, 7, 10};
Преобразуйте числа в названия месяцев и выведите их.
Дана начальная дата и количество дней:
auto startDate = std::chrono::year{2024}/std::chrono::month{1}/std::chrono::day{1};
int daysToAdd = 100;
Вычислите конечную дату и день недели для нее.
Дан список дат в разных форматах:
std::vector<std::string> dateStrings = {"2024-01-15", "15.01.2024", "2024/01/15"};
Преобразуйте все даты к единому формату день.месяц.год.