Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ответ:

Отправлено ETM 17 июня 2007 г. 23:21
В ответ на: Ответ: отправлено ETM 17 июня 2007 г. 23:17

typedef unsigned int word;
typedef unsigned char byte;

typedef struct {
byte day,month;
word year;
} DataTyp;
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
byte isVisocosn(word year)
{if( (year % 4)==0 && (year % 1000)!=0 ) return 1; else return 0;}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
byte WeekDay(void *dataout)
{
int i;
long kolday;
DataTyp *d=(DataTyp *)dataout;
byte nomer_day;

kolday=(long)((d->year-1)/4)*366+(long)((d->year-1)-((d->year-1)/4))*365
-(d->year/1000);
for(i=1;i<=d->month-1;i++) kolday+=MonthDay(i,d->year);
kolday+=d->day;
if(d->year>=2000) kolday++;
nomer_day=(byte)(kolday-(kolday/7)*7);
if(nomer_day==0) nomer_day=7;
return nomer_day;
}

//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
byte MonthDay(byte month,word year)
{
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: return 31;
case 4:
case 6:
case 9:
case 11: return 30;
case 2:
if(isVisocosn(year) || (year==2000)) return 29; return 28;
}
return 0;
}


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
что получится, если сложить 4 и 4 ?

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru