TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

Тексты программ

 
Программа определения дня недели
Определение биоритмов
Игра НИМ
Программа NOTEBOOK

 

Программа определения дня недели

{Эта программа вводит дату в формате ДЦ ММ ГГГГ к выводит на экран соответствующий этой дате день недели. Описание программы см. п. 2. 7.1.} 

var

IsCorrectDate: Boolean; {Признак правильной даты}

d,m,y : Integer; {Вводимая дата - день, месяц и год}

{---------------}

Procedure InputDate (var d,m,y : Integer; var correctly : Boolean); 

{Вводит в переменные d, m и у очередную дату и проверяет ее. Если дата правильная, устанавливает correctly=true, иначе correctly= false } 

begin {InputDate}

Write ( 'Введите дату в формате ДД ММ ГГГГ: ');

ReadLn(d,m,y) ;

correctly := (d>=l) and (d<=31) and (m>=l)

and (m<=12) and (y>=1582) and (y<=4903) 

end; {InputDate}

{----------------}

Procedure WriteDay (d,m,y : Integer) ; 

const

Days_of_week : array [0..6] of String [11] =

( ' воскресенье ' , ' понедельник ' , ' вторник ' ,

' среда ' , ' четверг ' , ' пятница ' , ' суббота ' ) ; 

var

с, w : Integer; 

begin

if m < 3 then

begin {Месяц январь или февраль} 

m := m + 10; 

у := у - 1 

end 

else

m := m - 2; {Остальные месяцы} 

с := у 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, у ) 

until not IsCorrectDate 

end.

 

 

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz