Напишите программу на C++, которая будет определять номер дня недели для заданного дня года (k), если известно

Напишите программу на C++, которая будет определять номер дня недели для заданного дня года (k), если известно, что 1 января было понедельником. Дни недели пронумерованы следующим образом: 0 — воскресенье, 1 — понедельник, 2 — вторник, . . , 6 — суббота. Входное значение k является целым числом и лежит в диапазоне 1–365. Используйте строку (string) для решения данной задачи.
Kosmicheskiy_Puteshestvennik_2327

Kosmicheskiy_Puteshestvennik_2327

Конечно! Чтобы написать программу на C++, которая будет определять номер дня недели для заданного дня года, мы можем использовать остаток от деления числа k на 7.

Вот пошаговое решение:

1. Включите библиотеку iostream для работы с потоками ввода-вывода, и библиотеку string для работы со строками.

\[
\begin{align*}
\#include \\
\#include
\end{align*}
\]

2. Создайте функцию, которая будет определять номер дня недели. Назовем ее getDayOfWeek.

\[
\begin{align*}
string & \space getDayOfWeek(int k) \\
\{ \\
\text{\hspace{10mm}} int dayNumber = k \% 7; \\
\text{\hspace{10mm}} string dayOfWeek; \\
\end{align*}
\]

3. Зависимoсть номера дня недели от значения dayNumber. Используя конструкцию switch-case, присвойте переменной dayOfWeek название соответствующего дня недели.

\[
\begin{align*}
\text{\hspace{10mm}} switch(dayNumber) \\
\text{\hspace{10mm}} \{ \\
\text{\hspace{15mm}} case 0: \\
\text{\hspace{20mm}} dayOfWeek = "воскресенье"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 1: \\
\text{\hspace{20mm}} dayOfWeek = "понедельник"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 2: \\
\text{\hspace{20mm}} dayOfWeek = "вторник"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 3: \\
\text{\hspace{20mm}} dayOfWeek = "среда"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 4: \\
\text{\hspace{20mm}} dayOfWeek = "четверг"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 5: \\
\text{\hspace{20mm}} dayOfWeek = "пятница"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{15mm}} case 6: \\
\text{\hspace{20mm}} dayOfWeek = "суббота"; \\
\text{\hspace{20mm}} break; \\
\text{\hspace{10mm}} \} \\
\end{align*}
\]

4. Верните значение переменной dayOfWeek из функции.

\[
\begin{align*}
\text{\hspace{10mm}} return dayOfWeek; \\
\} \\
\end{align*}
\]

5. В функции main() получите входное значение k от пользователя, вызовите функцию getDayOfWeek() и выведите результат.

\[
\begin{align*}
\text{\hspace{10mm}} int main() \\
\text{\hspace{10mm}} \{ \\
\text{\hspace{15mm}} int k; \\
\text{\hspace{15mm}} std::cout << "Введите номер дня года: "; \\
\text{\hspace{15mm}} std::cin >> k; \\
\text{\hspace{15mm}} std::string day = getDayOfWeek(k); \\
\text{\hspace{15mm}} std::cout << "День недели: " << day << std::endl; \\
\text{\hspace{15mm}} return 0; \\
\text{\hspace{10mm}} \} \\
\end{align*}
\]

Теперь, когда мы введем номер дня года, программа рассчитает и выведет соответствующий день недели. Например, если введенное число k равно 100, программа выведет "День недели: среда".

Это полное решение задачи. Если у вас возникнут еще вопросы или нужна дополнительная помощь, пожалуйста, дайте мне знать!
Знаешь ответ?
Задать вопрос
Привет!
hello