Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 14

Тема: Алгоритм календаря

  1. #1
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Алгоритм календаря

    Нужен собственно алгоритм расчета календаря.
    Например как в винде c 1980 по 2099 год.
    Есть идея сварганить его для спека (вернее для Фени).
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  2. Этот пользователь поблагодарил Mick за это полезное сообщение:
    scl^mc (17.04.2012)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Master
    Регистрация
    08.01.2007
    Адрес
    Красноярск
    Сообщений
    734
    Благодарностей: 1855
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

  5. Этот пользователь поблагодарил tiboh за это полезное сообщение:
    Mick (16.04.2012)

  6. #3
    Veteran Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    Курган
    Сообщений
    1,695
    Благодарностей: 357
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть другой алгоритм, попроще и работает как раз в указанном диапазоне дат. Алгоритм следующий:

    1) Из текущей даты нам надо получить количество дней прошедших от 1 января 1900 года. (этот день выпал на пн.)
    2) Полученное число разделить на 7 - получаем день недели.

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  7. Этот пользователь поблагодарил Vadim за это полезное сообщение:
    Mick (18.04.2012)

  8. #4
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,062
    Благодарностей: 780
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    Нужен собственно алгоритм расчета календаря.
    Например как в винде c 1980 по 2099 год.
    Есть идея сварганить его для спека (вернее для Фени).
    Формул масса:
    http://vkalendar.ru/tag/formula
    http://vkalendar.ru/analiticheskie-v...ila-i-formulyi

  9. Этот пользователь поблагодарил Лас за это полезное сообщение:
    Mick (18.04.2012)

  10. #5
    Guru
    Регистрация
    15.01.2005
    Адрес
    USSR
    Сообщений
    2,038
    Благодарностей: 331
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    У меня была программа календаря даже на МК-52. Именно с её помощью я узнал, что родился в четверг.

  11. #6
    Veteran Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    Курган
    Сообщений
    1,695
    Благодарностей: 357
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Wlodek Посмотреть сообщение
    У меня была программа календаря даже на МК-52
    Помню её. В Технике Молодёжи её опубликовали. Набирал, запускал.

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  12. #7
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    2,679
    Благодарностей: 2035
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Mick, Стандартный алгоритм

    Январь — это 1, декабрь — 12 месяц. Для определения сдвига используется следующая формула: a=(14-месяц) div 12 (a — вспомогательная величина). Затем определяются год и месяц с учётом поправки: y=год-a (год — увеличиваем на 1 от исходного). m=месяц+12·a-2.

    После вспомогательных операций вычисляется сам день недели:
    result=(7000+(день+y+y div 4-y div 100+y div 400+(31×m) div 12)) mod 7

    Для юлианского календаря формула выглядит так:
    result=(6998+(день+y+y div 4+(31×m) div 12)) mod 7

    Результат — число от 0 до 6, где 0 — воскресенье, 1 — понедельник, 2 — вторник, 3 — среда, 4 — четверг, 5 — пятница, 6 — суббота.

    http://ru.wikipedia.org/wiki/%C2%E5%...ED%E4%E0%F0%FC
    Когда есть, но не знаеш где - это все равно, что нету.

  13. Эти 3 пользователя(ей) поблагодарили null_device за это полезное сообщение:
    GriV (29.04.2012), John North (18.04.2012), Mick (18.04.2012)

  14. #8
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Во пищи для размышления подкинули
    Спасибо, буду разбираться теперь.
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  15. #9
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,426
    Благодарностей: 643
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А кто-нибудь эту тестил?
    http://zxpress.ru/book_articles.php?id=562
    (ветер дует отсюда: http://zxpress.ru/book_articles.php?id=325)
    Последний раз редактировалось Destr; 18.04.2012 в 19:05.

  16. #10
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    2,679
    Благодарностей: 2035
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Mick, есть такая книжка: 128 советов начинающему программисту. Там тоже есть примеры программы "вечный календарь" (описание всех вариантов, дано в конце книжки)..
    Последний раз редактировалось null_device; 18.04.2012 в 19:38.
    Когда есть, но не знаеш где - это все равно, что нету.

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Алгоритм работы муз. сопроцессора AY-3-891x
    от weiv в разделе Программирование
    Ответов: 14
    Последнее: 04.02.2011, 10:43
  2. Алгоритм текстового Quest'a
    от ALKO в разделе Программирование
    Ответов: 11
    Последнее: 23.12.2010, 00:47
  3. Алгоритм и..
    от Пётр в разделе Программирование
    Ответов: 4
    Последнее: 21.05.2008, 19:52
  4. сложнопонимаемый алгоритм
    от psb в разделе Программирование
    Ответов: 35
    Последнее: 26.05.2006, 23:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •