0 / 0 / 0
Регистрация: 24.09.2013
Сообщений: 2
|
|
1 | |
Вычислить количество пятниц, приходящихся на 13-е числа 21 века28.10.2013, 03:16. Показов 10579. Ответов 5
Метки нет (Все метки)
Доброго времени суток!
Поставлено следующее условие: вычислить количество пятниц, приходящихся на 13-е числа 21 века. Как это программно реализовать? Заранее благодарен.
0
|
28.10.2013, 03:16 | |
Ответы с готовыми решениями:
5
Определить количество понедельников в году, приходящихся на 13-е числа Вычислить количество пятниц, приходящихся на 13-е числа столетия с номером n Вычислить количество пятниц, приходящихся на 13-е число Определить количество пятниц в году, приходящихся на 13-е число |
Модератор
9868 / 5236 / 3306
Регистрация: 17.08.2012
Сообщений: 16,006
|
||||||
28.10.2013, 05:04 | 2 | |||||
Ну... В общем, просто, если подумать...
0
|
14 / 14 / 14
Регистрация: 05.10.2013
Сообщений: 141
|
|
28.10.2013, 09:21 | 3 |
Не думаю , что программа правильно написана , результат ( k) = 1715. Даже если каждый месяц с 2001 по 3000 год будет пятница 13-е , то это 1200 пятниц , откуда 1715 ?
0
|
Модератор
9868 / 5236 / 3306
Регистрация: 17.08.2012
Сообщений: 16,006
|
|||||||||||
30.10.2013, 22:39 | 4 | ||||||||||
Dj Programmer, частично Вы правы. В программе есть две несущественные ошибки, я бы даже сказал, неточности, с вычислением следующего 13 числа. Вот исправленный код:
Добавлено через 23 часа 31 минуту Dj Programmer, я неумышленно ввёл Вас в заблуждение. 21 век кончается в 2100 году, а не в трёхтысячном. Это я что-то по невнимательности на тысячелетие замахнулся. Правильно будет
Не по теме: А ведь как я был уветен в себе!
2
|
1 / 1 / 0
Регистрация: 05.12.2015
Сообщений: 10
|
|
05.12.2015, 18:29 | 5 |
Cyborg Drone, Спасибо огромное за код! Не могли бы вы пояснить, пожалуйста, почему деление на 7 без остатка определяет именно пятницу 13? Код абсолютно верный, сверил с календарём.
0
|
Модератор
9868 / 5236 / 3306
Регистрация: 17.08.2012
Сообщений: 16,006
|
|
05.12.2015, 19:37 | 6 |
Потому что отсчёт в данной программе идёт от одной из пятниц 13-е, а именно: 13.04.2001. И считаем дни по модулю 7. Для 13.04.2001 счётчик дней по модулю 7 принимаем равным 0 (переменная n). Дни недели в программе нумеруются от 0 до 6: пятница, суббота, воскресенье, понедельник, вторник, среда и четверг соответственно.
Основной цикл: 1) Выясняем день недели: остаток от деления счётчика дней на 7. Если получается 0, то это - пятница 13. 2) Затем к полученному остатку прибавляется количество дней в текущем месяце, тем самым получаем количество дней до 13 числа следующего месяца плюс номер дня недели текущего месяца. Повторяем до нужной даты. Пояснение к пункту 2). Даже не пояснение, а так... Повторение. Складывая номер дня недели текущего месяца с количеством дней текущего месяца и выбрасывая целое количество семёрок из этого числа, получаем номер дня недели следующего месяца. Так же, как и при ручном подсчёте. К примеру, в текущем месяце 30 дней, и текущий день 13 числа этого месяца - понедельник (3). Считаем семёрками, что за день недели будет через 30 дней, то есть, 13 числа следующего месяца. Через 7+7+7 дней будет всё тот же понедельник, а ещё через 2 дня - среда (3+2=5). В программе считается точно так же, только без лишнего разжёвывания: - Текущее 13 число - понедельник (3). Плюс 30 дней = 33. - Выкидывается максимальное целое количество семёрок, чтобы остаток был меньше 7 (это и есть mod 7). 33 mod 7 = 5, значит, следующее 13 число - среда.
1
|
05.12.2015, 19:37 | |
05.12.2015, 19:37 | |
Помогаю со студенческими работами здесь
6
Найти количество пятниц с 1 января 2001 по 31 декабря 2010. И найти количество пятниц, 13 Вычислить количество пятниц приходящих на 13 число заданного столетия Сколько пятниц и пятниц 13 в период с 1 января 2001 по 31 декабря 2020 ( включительно) ? Определить количество вторников в году, приходящихся на 13-е число Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |