Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было понедельником - C (СИ)
Формулировка задачи:
Дни недели пронумерованы следующим образом: 0 – воскресенье, 1 – понедельник, 2 – вторник, ... , 6 – суббота. Дано целое число K, лежащее в диапазоне 1–365. Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было понедельником
Cкажите, что не так?
#include <stdio.h> // для ввода-вывода #include <conio.h> int main() { int day; printf( "Enter day of the year: "); scanf("%f", &day); while (day > 7) day -= 7; printf("Day of the week is:%g") ; getch(); }
Решение задачи: «Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было понедельником»
textual
Листинг программы
char *days[] = { "воскресенье", "понедельник", "вторник", "...", "...", "...", "субб." }; printf( "%s\n", days[k % 7] );
Объяснение кода листинга программы
В представленном коде:
- Объявлен массив строк
days[]
с семью элементами, представляющими названия дней недели. - Используется оператор
%
для определения остатка от деленияk
на 7, который будет использоваться в качестве индекса в массивеdays[]
. - С помощью функции
printf()
выводится на экран значениеdays[k % 7]
, которое представляет собой название дня недели дляk
-го дня года.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д