|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
31.10.2014, 11:09 | #1 |
Программист и
Участник клуба
Регистрация: 29.10.2006
Сообщений: 1,265
|
Алгоритм расписания
Есть такая необходимость, в вычислении обновления. У меня есть текущая дата и дата последнего изменения файла. Есть список дней недели, в какие именно файл меняется либо просто указание что файл обновляется каждые N дней. Подскажите как узнать не "пропущено" ли изменение? Не могу придумать нормальный алгоритм
Пример 1
Пример 2
Пример 3
Пример 4
Последний раз редактировалось Simply-Art; 31.10.2014 в 11:14. |
31.10.2014, 11:34 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,318
|
Как идея:
По времени изменения файла получить время ближайшего обновления Время ближайшего обновления преобразовать в диапазон двухчасовой Если время изменения и текущая дата лежат в этом диапазоне, то все нормально
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
31.10.2014, 11:36 | #3 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
А зачем гадать? Просто знаешь, что в среду и пятницу файл X будет изменен, значит в четверг и субботу делаешь проверку даты изменения/создания на день проверки(дата равна среде, пятнице) если такое есть, то файл обновили.
Более достовеным способом, будет проверка CRC суммы файла на след. день после обновления. |
07.11.2014, 06:17 | #4 | ||
Программист и
Участник клуба
Регистрация: 29.10.2006
Сообщений: 1,265
|
Выходные были, не было времени ответить
Цитата:
Цитата:
Последний раз редактировалось Simply-Art; 07.11.2014 в 06:19. |
||
07.11.2014, 14:28 | #5 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Кто обновляет файлы? Вы или кто-то другой?
Я бы составил большие таблички - когда должны обновляться файлы и тупо сравнивать начиная с последней ближайшей даты. Таким образом основные несложные вычисления проводились бы однократно. Например, файл нужно обновлять каждый день. Составляем табличку: 06.11 10.00 07.11 10.00 08.11 10.00 09.11 10.00 и т.д. Так как 06.11 уже прошло - убиваем эту дату в списке. Смотрим 07.11 совпало с седня? Совпало. Смотрим время. Думаем чего делать дальше.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 07.11.2014 в 14:32. |
07.11.2014, 15:49 | #6 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Код:
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 07.11.2014 в 16:00. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Cоставление расписания | mario1990 | Помощь студентам | 0 | 27.05.2011 12:37 |
Генерация расписания | Pro0f | Помощь студентам | 0 | 23.05.2011 21:36 |
генератор расписания | zebatic | БД в Delphi | 1 | 15.01.2011 15:48 |
Расписания ИТ-конференций | GenniY | Свободное общение | 3 | 05.10.2009 16:01 |