Помощь - Поиск - Пользователи - Календарь
Полная версия: День недели по числу и месяцу
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
*alt
Считая, что год високосный и 1 января приходится на день недели wd1, определить wd - день недели, на который приходится день с датой d,m.
Данные:
Код

type Tmon = (jnr, fbr, mar, apr, may, jun, jly, aug, sep, oct, nov, dec);
       Tday = (mon, twu, wen, thr, fry, sat, sun);
var d:1..31;
      m:Tmon;
      wd1,wd:Tday;


Есть предложения, но как их оформить подобающе (только начинаю изучать язык):
Посчитать количество дней с начала года до заданного дня (просуммировать в цикле количество дней во всех месяцах от января до m-1, прибавить d). Полученный результат разделить на 7 и найти остаток от деления (остаток:=дней_с_начала_года mod 7). Если первый день года - понедельник, номер дня недели будет равен остатку (считая, что понедельник имеет номер 1). Если первый день - не понедельник, то считайте остаток как (дней_с_начала_года+смещение) mod 7. (например, если первый день - вторник, то смещение=1). Если остаток от деления равен 0, то это воскресенье.

Вот так, как?

__________
Мозгов у нас предостаточно, но они в основном набекрень
volvo
Цитата
Посчитать количество дней с начала года до заданного дня

Задачи связанные с календарем.
Посмотри в варианте Amro, как это сделано... Ну, и в моем варианте это присутствует...
*alt
Задачи связанные с календарем
В вашем варианте непонятно
что это getdate(data.year,data.months,data.day,week);
если процедура, то почему не описана, стандартной такой по-моему нету
и ещё, что такое inc

________
Не знать не стыдно, стыдно не хотеть знать)
volvo
Во-первых, это не в моем варианте... Мой - первый, второй - Amro smile.gif

А во-вторых, в модуле DOS есть процедура GetDate, возвращающая текущие год, месяц, день, и день недели заодно ... См. в хелпе...
*alt
Цитата(volvo @ 1.05.2007 10:39) *

в модуле DOS есть процедура GetDate, возвращающая текущие год, месяц, день, и день недели заодно ... См. в хелпе...

Не нашёл. Как это будет в Delphi?
volvo
Для Дельфи вообще-то есть свой раздел... Здесь - Паскаль...

В дельфи есть модуль DateUtils для работы с датами...
*alt
Я имел ввиду Pascal в Delphi 7.0 : uses SysUtils, windows;
Как переделать ваш исходник под мои требования?

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.