Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2011, 20:05   #1
Waickem
 
Регистрация: 14.10.2011
Сообщений: 4
По умолчанию День недели по дате

Доброго времени суток.
Начал изучать паскаль по книге Фаронова. Помогите понять принцип действия данного примера и что я сделал не правильно так как результат не выдается. Спс.
Код:
Program nr7;
var
IsCorrectDate : Boolean;
d,m,y         : Integer;
Procedure InputDate(var d,m,y : integer;
                    var correctly : boolean);
begin
  correctly := (d>=1) and (d<=31) and (m>=1)
                              and (m<=12) and (y>=1582) and (y<=4903)
end;
{------------------------------}
Procedure WriteDay(d,m,y: integer);
const
Days_of_week : array[0..6] of String [11] =
('Sunday','Monday','Tuesday','Wednesday','Friday','Saturday','');
var
c,w : Integer;
begin
if m < 3 then
  begin
  m:=m+10;
  y:=y-1;
  end
else
m:= m-2;
c:= y div 100;
y := y mod 100;
w:= abs(trunc(2.6*m-0.2)+d+y div 4+y+c div 4-2*c) mod 7;
writeln(Days_of_week[w])
end;
{-------------------------}
begin
 repeat
 InputDate(d,m,y,IsCorrectDate);
 if IsCorrectDate then
    WriteDay(d,m,y)
 until not IsCorrectDate
 end.
Waickem вне форума Ответить с цитированием
Старый 14.10.2011, 20:20   #2
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

1) А где читаются d, m, y?
2)
Цитата:
Код:
('Sunday','Monday','Tuesday','Wednesday','Friday','Saturday','');
Ничего не забыл?
Somebody вне форума Ответить с цитированием
Старый 14.10.2011, 20:39   #3
Waickem
 
Регистрация: 14.10.2011
Сообщений: 4
По умолчанию

Добавил
Код:
readln(d,m,y);
в тело программы. Вроде день показывает, но почему-то создается бесконечный цикл.

Все, нашел ошибку с днем, спасибо =ъ

Последний раз редактировалось Waickem; 15.10.2011 в 00:30.
Waickem вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
определения дня недели по дате KoFeMaN Помощь студентам 17 27.10.2010 17:35
День недели Марк Охман Общие вопросы Delphi 7 27.09.2010 15:42
определить день недели по заданному числу (считать в месяце 30 дней и первый день месяца понедельник dan1991 Помощь студентам 1 01.03.2009 20:59
по заданной дате вычислить какой день недели. Pascal. Яська Помощь студентам 4 28.01.2009 23:51
Найти какой день недели ? Cantana Помощь студентам 6 31.10.2007 15:29