>> Delete Reply from No. 1389 article
No. RE: cal 은 잘못되지 않았습니다. ^^;

등록 2001-06-20 20:12:00     조회 5
이름 kimio    

		C 로 날짜를 구하는 함수를 만들다 cal 에서 이상한 점을 발견했었습니다.
100년과 1000년은 분명히 윤년이 아닌데, 실행을 해보면,
----------------------
# cal 2 100
    February 100
Su Mo Tu We Th Fr Sa
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
----------------------
이렇게 나오는 겁니다.  분명히 버그다! 이렇게 생각을 했었지만.....
그게 아니더군요..아래의 글을 읽어 보세요..
 --------------- 아   래 ---------------
현재 사용되고 있는 태양력은 그레고리력인데, 원칙대로라면 제시하신 계산법이 맞
습니다.
 다만, 이 방식(400년에 97번의 윤년)은 그레고리력이 적용된 1582년 이후에 해당됩
니다.
 그 이전은 율리우스력을 사용해서 그냥 4년마다 1번씩 윤년이 들어갑니다.
 따라서 말씀하신 100년과 1000년의 경우는 윤년이 맞습니다. (100년단위 보정이 없
습니다.)
 좀더 정확히는 08년부터 4년마다 1번 윤년이 되고, 04년은 윤년이 아닙니다.
 따라서,
 BC 6 - AD 7년 : 윤년 없음
 8년 - 1581년 : 4년마다 윤년 (400년에 100회)
 1582년 -      : 400년마다 97번의 윤년
 또한 그레고리력이 적용된 이후에도 약간의 오류가 있는데
 원래는 그레고리력 반포시점인 1582년도에서 3월 11일 - 3월 20일이 없어야 하지만,
 실제 국가마다 적용되는데 차이가 있어 이 보정이 이루어지지 않은 달력의 경우는
 누적오류를 정정하기 위해 1752년  9월 3일 - 9월 13일이 없습니다.
  한편, 현재의 그레고리력은 3000년에 1일정도의 오차가 또 발생합니다.
 따라서, 제대로 하려면 3000년마다 다시 한번 윤년보정을 해주어야 하는데,
 아직까지는 이 부분에 대한 규정은 없는 것으로 알고 있습니다.
  이런 것들 말고도 과거의 역법은, 현재의 달력과는 월별 날짜에 차이가 있어서
 정확한 작업을 원하신다면 좀더 상세한 자료를 수집해서 확인하셔야 할 것입니다.
 조금이나마 도움이 되기를 바랍니다. ^_^
 안녕히.
----------------------------------------------------------------------
 : 말 그대롭니다. 달력구하는 쉘스크립트입니다.
: 전에 올렸던 것이 넘 느려서 이렇게 다시 올립니다.
:
: 버그 수정을 하는 도중 새로운 사실을 발견했습니다. cal이라는 프로그램 있죠?
:
: 그거 윤년을 고려하지 않습니다. 따라서 그것과 제것을 비교하시고
:
: 잘못됐다고 생각하시면 안됩니다.
:
: 아무쪼록 쉘스크립트 공부하시는 분께 조금이나마 도움이 되었으면 좋겠습니다.
:
: <a href="http://esc.cl.hangkong.ac.kr/~fthing/shellcal.sh"><b>클릭!!</b></a>
:
: 실행방법>
:
: $ ls -l shellcal.sh
: -rw-r--r--    1 jinjin   jinjin       2023  6월 20 18:02 shellcal.sh
: $ chmod 755 shellcal.sh
:
: 실행할 준비가 된상태 이제 실행>
:
: $ ./shellcal.sh 1982 11 # 년도와 달 사이에 공백을 둠.
: ====================
:     1982년 11월   
: --------------------
: 일 월 화 수 목 금 토
: --------------------
:     1  2  3  4  5  6
:  7  8  9 10 11 12 13
: 14 15 16 17 18 19 20
: 21 22 23 24 25 26 27
: 28 29 30
: ====================
: $
:
:
: 그럼 이만...
:
: --
: 에공 sed하고 grep은 옵션이 왜케 마노...
:
: 얼렁 알아야 할텐데...--by kimio
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved