Показать сообщение отдельно
Старый 31.05.2009, 19:54   #65 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Настена18 Посмотреть сообщение
Здравствуйте!! Задачка на Паскале..
День учителя ежегодно отмечается в первое воскресенье октября. Дано натуральное число n, означающее номер года. Определить число, на которое в октябре указанного года приходится день учителя...
Вот...помогите, пожалуйста, завтра уже сдавать..До этого задача была сделана таким образом, что все опиралось на 2000..год и работала с 2000...но препода это не устраивает..
Пожалуйста:
VAR
N,p0,p1,p2,p3,Date:INTEGER;
Full_Number_of_Days:LongInt;

BEGIN
Write('Enter the year '); Readln(N);
p0:=(N div 400)-(1994 div 400);
p1:=(N div 100)-(1994 div 100);
p2:=(N div 4)-(1994 div 4);
Full_Number_of_Days:=(N-1994)*365+p2-p1+p0;
p3:=Full_Number_of_Days mod 7;
IF p3>=2 THEN Date:=9-p3 ELSE Date:=2-p3;
WriteLn('The Teacher Day in',N:5,' is ',Date:2,' of October');
ReadLn;
END.

Здесь за основу взят 1994 год - год введения Дня учителя. Программа работает для любого года, начиная с 1994 и до конца времён.
Vladimir_S вне форума  
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070