
Помогите написать на С++, пожалуйста (За пояснение решения +1000 к карме) Условие: Пусть k -
целое от 1 до 365. Присвоить целой переменной n значение 1, 2, ..., 6 или 7 в зависимости от того, на какой день недели (понедельник, вторник, ..., субботу или воскресенье) приходится k-й день не високосного года, в котором 1 января - понедельник.

Ответы на вопрос

Ответ:
#include <iostream>
using namespace std;
int main()
{
int k, a;
cin >> k;
a = k % 7;
if (a == 0) {
cout << "7" << endl;
}
else {
cout << a << endl;
}
return 0;
}
Объяснение:
Вроде решила верно. Мы добавляем переменную а - это остаток от 7 дней.(Например 15 делим на 7, остаток 1) Если остаток 0(например 14 делим на 7), значит это 7 день недели и, чтобы у нас не вышло 0 вместо 7 дня нужно добавить if (если). Мы делим на 7 так как это неделя. Если у нас остаток больше 0, то сразу выводим этот остаток.(Например 17 день поделить на 7, остаток 3 - это и есть день, который мы ищем). Надеюсь мои объяснения понятны :)



Конечно, я могу помочь вам написать программу на C++. В данной задаче можно воспользоваться арифметическими операциями и остатком от деления для определения дня недели.
Пример решения:
```cpp
#include
int main() { int k; std::cout << "Введите значение k (от 1 до 365): "; std::cin >> k;
// Задаем, что 1 января - понедельник int dayOfWeek = (k + 0) % 7; // 0, потому что 1 января - понедельник
// Выводим результат std::cout << "Для " << k << "-го дня не високосного года, 1 января будет "; switch (dayOfWeek) { case 0: std::cout << "понедельник."; break; case 1: std::cout << "вторник."; break; case 2: std::cout << "среда."; break; case 3: std::cout << "четверг."; break; case 4: std::cout << "пятница."; break; case 5: std::cout << "суббота."; break; case 6: std::cout << "воскресенье."; break; default: std::cout << "Ошибка в расчетах."; break; }
return 0; } ```
В этой программе `dayOfWeek` вычисляется как остаток от деления суммы `k` и 0 на 7, что позволяет определить день недели для `k`-го дня в невисокосном году. Затем используется оператор `switch`, чтобы вывести соответствующий день недели.
Не забудьте проверить введенное значение `k` на соответствие диапазону от 1 до 365.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili