|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.03.2018, 15:26 | #1 |
Новичок
Джуниор
Регистрация: 23.03.2018
Сообщений: 3
|
Определить количество понедельников в году, приходящихся на 13-е число
Определить количество понедельников в году, приходящихся на 13-е число, считая, что год не високосный и 1 января приходится на понедельник.
|
23.03.2018, 16:21 | #2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Определил, а что теперь?
|
23.03.2018, 16:25 | #3 |
Новичок
Джуниор
Регистрация: 23.03.2018
Сообщений: 3
|
код написать
|
23.03.2018, 17:55 | #4 |
Форумчанин
Регистрация: 08.11.2017
Сообщений: 347
|
Напишите тупо цикл по дням года от 1 до 365 с шагом 7 и проверяйте какое это число вычитая из номера дня число дней в предыдущие месяцы.
|
26.03.2018, 10:10 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
она тут не сильно поможет.
потому как. 1) ей нужно передавать в параметрах год, которого нет. (придётся делать цикл по годам и искать любой подходящий год - год не високосный и 1 января приходится на понедельник - но это как-то некрасиво...) 2) чем Вас не устраивает простой как топор алгоритм перебора всех понедельников с проверкой на дата == 13 ? 3) автор хотел, чтобы ему выложили готовый код, а злые ленивые дядьки-программисты его жестоко обманули и готовый код не дали! p.s. а какую формулу Вы имеете в виду? Может быть, я чего-то не знаю или просто неправильно Вас понял? |
26.03.2018, 10:29 | #7 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Цитата:
Для проверки нам нужно знать количество дней в каждом месяце, кроме декабря. Можно тупо заполнить массив числами 31, 28,... Условие, что 1 января - понедельник значит что для понедельника верно утверждение: день в году % 7 == 1. Берём январь, 13 число января - это 13-й день в году. Берём 13 % 7 != 1, значит не понедельник, январь не подходит. Берём февраль, 13 число февраля - это 13 + 31 - 44 день в году. 44 % 7 != 1 - опять не понедельник. март: 44 + 28 = 72 - не понедельник. ... год, кстати, можно текущий взять, так что особо искать не нужно его. |
|
26.03.2018, 10:36 | #8 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,619
|
А в следующем году прога уже будет работать неправильно.
Нужен, думаю, массив для перевода числа в день от начала года. Да, неудобен наш календарь, надо что-то менять... |
26.03.2018, 11:24 | #9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
вот цикл "В ЛОБ": Код:
Последний раз редактировалось Serge_Bliznykov; 26.03.2018 в 11:27. |
|
26.03.2018, 12:37 | #10 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Serge_Bliznykov, мой алгоритм оптимальнее и я дал человеку удочку, а не рыбу
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структура элемента массива «пассажир»: фамилия, номер рейса, багаж - количество вещей, общий вес. Определить число пассажиров, кол | Masha Koks | Помощь студентам | 3 | 26.11.2013 19:00 |
В последовательности определить сумму чисел,их количество,максимальное и минимальное число с их порядковыми номерами (QBasic) | Лена1308 | Помощь студентам | 3 | 14.12.2011 22:20 |
В последовательности определить сумму чисел,их количество,максимальное и минимальное число с их порядковыми номерами (QBasic) | Лена1308 | Помощь студентам | 0 | 01.12.2011 21:19 |
Как подсчитать количество дней недели в году? | delphiboy | Microsoft Office Excel | 6 | 28.02.2010 04:39 |
Ввести число N и определить делится ли оно без остатка на число M (VBA) | Ivanich | Microsoft Office Excel | 7 | 24.04.2008 19:43 |