Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as C++ by registered user Juggerhale ( 10 years ago )
#include <stdio>
#include <Windows>

int yeardet (int year) {
 if (year % 4==0) {
  if (year % 100==0) {
   if (year % 400==0) {
    return 2;
   }
   else { return 1; }
  }
  else { return 2; }

 }
 else { return 1; }
//윤년 = 2 평년 = 1
}

int printcal(int d, int month, int year, int monthday) {
 printf("______________________________________________________\n");
 printf("\t\t    %d년 %d월 달력\n", year, month);
 printf("______________________________________________________\n");
 printf("일\t월\t화\t수\t목\t금\t토\n");//윗 작업

 for (int i = 0; i < d; i++) {
  printf("\t");//앞 띄기
 }

 for (int j = 1; j < monthday + 1; j++,d++) {
  printf("%d", j);
  printf("\t");//일 표시

  if (d % 7 == 6) {
   printf("\n");
  }//띄어쓰기
 }
 
 printf("\n");//마무리

 return 0;
}

int main() {
 while (1) {
  int year, month, monthday;
  printf("년 / 월 ? \n");
  scanf("%d", &year);
  scanf("%d", &month);
  system&#40;"cls"&#41;;

  int d = 6;//1583년 1월 1일은 토요일

  for (int i = 1583; i < year; i++) {
   d = d + yeardet(i);
  } //d 년작업

  if (yeardet(year) == 1) {
   int monthdays[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
   monthday = monthdays[month];
   for (int j = 0; j < month; j++) {
    d = d + monthdays[j];
   }
  }

  else {
   int monthdays[13] = { 0,31,29,31,30,31,30,31,31,30,31,30,31 };
   monthday = monthdays[month];
   for (int j = 0; j < month; j++) {
    d = d + monthdays[j];
   }
  } //d 윤달계산

  d = d % 7;//d 마무리
  printcal(d, month, year, monthday); //표현

  system&#40;"pause"&#41;;
  system&#40;"cls"&#41;;
 }// 무한반복

 return 0;
}

 

Revise this Paste

Your Name: Code Language: