* 알고리즘

 

- 서기 1년1월1일~서기 2012년 5월 25일 총 일수 구하기
   총일수 % 7 -> 나머지 1월 2화 ... 0일요일

 

1) 서기1년~서기2011년
    윤년 +=366
    평년 +=365

2) hap+= 1월 31
              2월 29
              3월 31
              4월 30
              5월 31
              6월 30
              7월 31
              8월 31
              9월 30
              10월 31
              11월 30
              12월 31


3) hap+=25

4) hap%7


int year=2012, month=5, day=25;
int hap=0;
int y,m,d;

for(y=1; y<year; y++)
{
   if(y%4==0 && y%100!=0 || y%400==0)
      hap=hap+366;
   else
      hap=hap+365;
}

int mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(year%4==0 && year %100!=0 || year%400==0) mon[2]=29;

for(m=1; m<month; m++)
{
   hap=hap+mon[m];
}


hap=hap+day;

printf("%d\n",hap);


switch(hap%7)
{
   case 1: printf("월"); break;
   case 2: printf("화"); break;
   case 3: printf("수"); break;
   case 4: printf("목"); break;
   case 5: printf("금"); break;
   case 6: printf("토"); break;
   case 0: printf("일"); break;
}


//문) 본인이 살아온 날수?

'..열심히 공부하세.. > C 입문' 카테고리의 다른 글

[10] 다차원 배열  (0) 2012.05.31
[정렬 알고리즘]  (0) 2012.05.29
[09] 배열 Array  (0) 2012.05.25
[08] while문, do~while문  (0) 2012.05.25
[07] 이중 for문   (0) 2012.05.24

+ Recent posts