2015-01-26 3 views
0

작업 : 예상되는 그레고리력 (요일, 2009 년, 935, 2, 342 BP 및 시간 축에있는 날짜 일 수 있음)을 요일과 요일로 가져와야합니다.요일에 잡기

어디에서나 수학적 모델을 찾을 수 없습니다. 누군가 전에이 문제에 직면했을 수 있습니까?

P. 구현 언어가 중요하지 않음

+0

그리고 답을 되풀이해서 말씀 드리면 대답이 아니 었습니다. 나는 당신이 [Zeller 's congruence]를 찾고 있다고 생각합니다. (http://en.wikipedia.org/wiki/Zeller%27s_congruence). –

+0

그리고 boddah : * 적절한 * 대답을 게시 할 자유롭게; 예 : 젤러 (Zeller)의 일치가 여기에서 도움이되는 방법을 설명하십시오. 아마도 샘플 구현을 통해서도 가능할 것입니다. 그러나 Wikipedia 페이지로 연결하는 것만으로는 충분하지 않습니다. –

+0

저는 수학 모델을 찾고 있는데, 어쩌면 그레고리력과 그레고리력이 얼마나 간단한 지 설명 할 수 있습니다. 나는 zeller의 conguruence를 발견했지만 그것이 어떻게 작동 하는지를 이해할 수 없다. – subtronic

답변

2

1 월과 2 월이 전년도의 마지막 2 개월로 간주되는 경우, 평일은 3 월 초와 (13m-1)/5가 다릅니다. & rfloor; 일; 요일을 계산하는 윤년과 도약의 세기를 조정 :

function weekday(ccyy, mm, dd) # zeller's congruence 
    days := ["Sun", "Mon", "Tues", "Wednes", "Thurs", "Fri", "Satur"] 
    if mm < 3 then mm, ccyy := mm + 10, ccyy - 1 else mm := mm - 2 
    cc, yy := ccyy // 100, ccyy % 100 
    day := (dd + (13 * mm - 1) // 5 + yy + yy // 4 + cc // 4 - 2 * cc) % 7 
    return days[day] || "day" 

이 전에 태양력의 채택 기간에 따라 약간 씩 다릅니다.