struct DayMonthYear
{
int day; // день
int month; // номер місяця
int year; // рік
};
bool IsDate(int A, int B, int C)
{
// A - день, B - місяць, C - рік
if (C < 1 || B < 1 || B > 12 || A < 1) return false;
int daysInMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
// Перевірка високосного року
bool isLeapYear = (C % 4 == 0 && C % 100 != 0) || (C % 400 == 0);
if (isLeapYear) daysInMonth[1] = 29;
if (A > daysInMonth[B - 1]) return false;
return true;
}
|