C언어로 달력 구현하기.
본 자료는 미리보기를 지원하지 않습니다.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

C언어로 달력 구현하기.에 대한 보고서 자료입니다.

본문내용

연도 및 달이 입력되면 해당 달력을 출력하기 위해 초일을 알아올 필요가 있다. 이를 위해서는 해당연도의 초일 시작 요일을 알아야 하는데 이부분을 계산하기 위해서는 기준 연도 1979년을 시작으로 입력 연도와의 차이만큼 일정 수를 더해주는 방식을 생각할 수 있다. 1979년의 초일은 월요일이며, 요일은 총 7개이므로 모듈러 연산을 통해 요일을 구할 수 있을 것이다. 문제되는 것은 윤년이 되는데 이는 4로 나누어지며, 100의 배수가 아니거나, 400의 배수인 연도가 윤년이 될 것이다. 평년의 경우는 365일이며, 365일은 7로 모듈러 연산을 하면 1이 남는다. 윤년의 경우는 366일이며, 7로 모듈러 연산을 하면 2가 남는다. 따라서 입력연도와 기준연도간의 차이만큼 날짜를 세주는 변수에 평년은 1, 윤년은 2를 더하고 7로 모듈러 연산을 하여 초일을 구할 수 있을 것이다. 이때 모듈러의 결과는 0은 월요일이 되며, 순서에 따라 6은 일요일이 될 것이다. 주의 할 것은 입력된 해당 연도까지는 계산하지 말아야 한다. 이를 계산하면 다음 연도의 초일을 구하는 것이 되기 때문이다.
입력달의 초일은 앞서 구한 해당연도의 초일로부터 계산되어야 한다. 이때 1, 3, 5, 7, 8, 10, 12월은 총일수가 31일이며, 2월은 윤년의 경우 29일, 평년의 경우 28일이 된다. 나머지 달들은 모두 30일이다. 여기서 28일은 7로 모듈러 연산하면 결과가 0이 되어 더해 줄 필요가 없지만, 29일은 1, 30일은 2, 31일은 3이 되어 해당하는 달이 입력 달보다 선행하는 경우 날짜 계산 변수에 이를 모두 더해 주어야 한다. 어짜피 모듈러 연산을 할 것이기 때문에 연도의 초일을 구할 때와 마찬가지로 나머지 값들만 더해주면 된다. 계산이 끝나면 7로 모듈러 연산하여 시작하는 요일을 구할 수 있을 것이다.
  • 가격1,000
  • 페이지수10페이지
  • 등록일2007.04.12
  • 저작시기2007.3
  • 파일형식압축파일(zip)
  • 자료번호#403922
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니