На сгенерировано ИИ!!
#include <iostream>
#include <limits>
#include <string>
class SeasonFinder {
public:
void run() {
char cont;
do {
int month = getMonth();
std::cout << "Время года: " << determineSeason(month) << std::endl;
std::cout << "Хотите попробовать ещё раз? (y/n): ";
std::cin >> cont;
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
} while (cont == 'y' || cont == 'Y');
}
private:
int getMonth() {
int month;
std::cout << "Введите номер месяца (1-12): ";
while (!(std::cin >> month) || month < 1 || month > 12) {
std::cout << "Неправильный ввод. Пожалуйста, введите номер месяца от 1 до 12: ";
std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
return month;
}
std::string determineSeason(int month) {
switch (month) {
case 12: case 1: case 2: return "winter";
case 3: case 4: case 5: return "spring";
case 6: case 7: case 8: return "summer";
case 9: case 10: case 11: return "autumn";
default: return "unknown";
}
}
};
int main() {
SeasonFinder().run();
return 0;
}
Формат входных данных
Одно целое число: month - номер месяца
(1 - январь, 2 - февраль, 3 - март, 4 - апрель, 5 - май, 6 - июнь, 7 - июля, 8 - август, 9 - сентябрь, 10 - октябрь, 11 - ноябрь, 12 - декабрь)
Формат выходных данных
Одно из слов:
“winter”, если время года – зима,
“spring”, если время года – весна,
“summer”, если время года – лето
“autumn”, если время года – осень