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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2011, 16:58   #1
nnndaniil
 
Регистрация: 18.01.2011
Сообщений: 9
По умолчанию Календарь в delphi

Мне нужно на delphi написать программу, которая рассчитывает, сколько лет, начиная с 1900 по 2000 год начались в воскресенье и закончились в воскресенье (=
Помогите пожалуйста!
nnndaniil вне форума Ответить с цитированием
Старый 18.01.2011, 17:40   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,724
По умолчанию

Есть формула, кот. дает день недели на заданную дату... а дальше просто цикл
p51x вне форума Ответить с цитированием
Старый 18.01.2011, 18:03   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
uses  dateutils,
  SysUtils;
var d:TDateTime;
begin
 d:=EncodeDate(1900,1,1);
 if NthDayOfWeek(d)=7 then write('sunday');
 readln;
  { TODO -oUser -cConsole Main : Insert code here }
end.
А теперь как и было сказано - циклом увеличивая год через incYear до 2000
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.01.2011, 18:14   #4
Fdrum
 
Регистрация: 18.01.2011
Сообщений: 6
По умолчанию

если я тебе подсуну календарь на асм, подойдет?
Fdrum вне форума Ответить с цитированием
Старый 19.01.2011, 07:10   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
 CountYear := 0;
 for year:=1900 to 2000 do begin
   if  (DayOfTheWeek(EncodeDate(year,1,1))=7) and
        (DayOfTheWeek(EncodeDate(year,12,31))=7) then Inc(CountYear);
 end; 

 ShowMessage('Таких годов было : '+IntToStr(CountYear));
Serge_Bliznykov вне форума Ответить с цитированием
Старый 19.01.2011, 11:36   #6
nnndaniil
 
Регистрация: 18.01.2011
Сообщений: 9
По умолчанию

большое спасибо, что быстро ответили!
я в программировании совсем профан, а курсовую седлать нужно))
у меня delphi ругается на CountYear, пробовал в переменных объявить, а все-равно не работает.
Подскажите пожалуйста, что делать?)
nnndaniil вне форума Ответить с цитированием
Старый 19.01.2011, 11:56   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
пробовал в переменных объявить
как пробовали?
должно быть
Код:
var CountYear :integer;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 19.01.2011 в 12:02.
Mad_Cat вне форума Ответить с цитированием
Старый 19.01.2011, 12:11   #8
nnndaniil
 
Регистрация: 18.01.2011
Сообщений: 9
По умолчанию

я так и написал, потом он начал ругаться на Year, я и его добавил, потом он ругался на DayOfTheWeek, и его добавил и сразу EncodeDate.
А Delphi на DayOfTheWeek пишет:
missing operator or semicolon

я код просто скопировал и вставил в обработчик он ButtonClick.
Код:
var CountYear, year :Integer
begin
 CountYear := 0;
 for year:=1900 to 2000 do begin
   if  (DayOfTheWeek(EncodeDate(year,1,1))=7) and
        (DayOfTheWeek(EncodeDate(year,12,31))=7) then Inc(CountYear);
 end; 

 ShowMessage('Таких годов было : '+IntToStr(CountYear));
end;
правильно?
nnndaniil вне форума Ответить с цитированием
Старый 19.01.2011, 12:18   #9
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
DayOfTheWeek, и его добавил
не надо было
надо было в uses добавить Dateutils
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 19.01.2011, 12:54   #10
nnndaniil
 
Регистрация: 18.01.2011
Сообщений: 9
По умолчанию

Огромное вам спасибо!!!!
Теперь все работает!
А если не сложно, можете немножко по коду рассказать, если я правильно понял, то:
считать годы от 0
для 1900 до 2000
если ... и дальше нечего не понял)
nnndaniil вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Календарь seriousMalish JavaScript, Ajax 2 12.05.2010 05:01
помогите календарь delphi npizpak Помощь студентам 3 27.11.2009 10:52
Програмка "Календарь" на Delphi R_A_M_I_L7777777 Помощь студентам 12 23.01.2009 16:57
Календарь в Delphi Vladya Помощь студентам 4 09.11.2008 12:44