#include <stdio.h>
#include <time.h>
typedef struct {
int day;
int month;
} Date;
Date find_last_weekday(int year, int month, int week_day) {
struct tm current = { 0 };
Date date;
current.tm _year = year - 1900;
current.tm _mon = month - 1;
current.tm _mday = 1;
if (month == 12) {
++
current.tm _year;
current.tm _mon = 0;
} else {
++
current.tm _mon;
}
mktime(¤t);
current.tm _mday = 0;
mktime(¤t);
while (
current.tm _wday != week_day) {
--
current.tm _mday;
mktime(¤t);
}
date.day =
current.tm _mday;
date.month =
current.tm _mon + 1;
return date;
}
int main(void) {
int year = 2024;
int week_day = 3;
int day;
int month;
Date date;
printf("Введите день месяца: ");
scanf("%i", &day);
printf("Введите число месяца: ");
scanf("%i", &month);
while (month <= 12) {
date = find_last_weekday(year, month, week_day);
if (day == 1 || day <=
date.day ) {
printf("%d.%02d.%d\n",
date.day , date.month, year);
}
if (day != 1) {
day = 1;
}
++month;
}
return 0;
}
дней этого отдела от заданной даты до конца этого года. Нужно написать код на языке C.