날마다 새롭게 또 날마다 새롭게

day_of_year, month_of_year : 함수 구현 코드 본문

프로그래밍/C / C++

day_of_year, month_of_year : 함수 구현 코드

아무유 2013. 4. 9. 20:53

static char daytab[2][13] = {

        {0,31,28,31,30,31,30,31,31,30,31,30,31},

        {0,31,29,31,30,31,30,31,31,30,31,30,31}

};


/* day_of_year : set day of year from month & day */

int day_of_year(int year, int month, int day)

{

int i, leap;


leap = ((year%4==0)&&(year%100!=0))||year%400==0;

for(i=0;i<month;i++)

day += daytab[leap][i];


return day;

}


/* month_of_year : set month, day from day of year */

void month_day(int year, int yearday, int *pmonth, int *pday)

{

int i, leap;


leap = ((year%4==0)&&(year%100!=0))||year%400==0;

for(i=0;yearday > daytab[leap][i]; i++)

yearday -= daytab[leap][i];


*pmonth = i;

*pday = yearday;

}

Comments