jdate.gms : 율리우스력 날짜 테스트

설명

슬롯 사이트 함수 JDate(년,월,일)는 다음과 유사한 인수를 허용합니다.
다른 언어의 기능을 날짜로 지정합니다. 가장 빠른 날짜는 1월 1일, 1일이며
가장 늦은 날짜는 9999년 12월 31일입니다. 슬롯 사이트는 1900년 1월 1일을 1일로 선택했습니다.
Excel에서 한 것처럼. 불행히도 Excel에서는 1900년을 잘못 처리합니다.
윤년으로 지정하고 1900년 3월 1일부터 시작하는 연속일을 지정합니다.
하루만 쉬어라.

인수는 긍정적일 수도 있고 부정적일 수도 있으며 반드시 형식을 취할 필요는 없습니다.
적절한 데이트. 분수 값이 있는 인수가 먼저 변환됩니다.
Floor() 함수를 사용하여 부호 있는 정수로 변환합니다.

Excel에 대한 참고 사항:
Excel DATE(년,월,일) 함수에는 다음과 같은 데이터 범위가 있습니다.
Excel에서는 1900년을 윤년으로 잘못 처리합니다.
 날짜(1900, 1, 1) = 1
 날짜(1900, 2,28) = 59
 DATE(1900, 3, 1) = 61 정확하지 않음; 60이어야 해
 DATE(9999,12,31) = 2958465가 잘못되었습니다. 2958464 여야합니다
1900년 미만의 값을 갖는 연도의 경우 1900년 이상으로 가정됩니다.

https://en.wikipedia.org/wiki/Julian_day의 위키는 율리우스력 날짜(JD)를 정의합니다.
이후의 시간 간격(일 및 분수)
기원전 4713년 1월 1일 그리니치 정오. 예를 들어 JD 값은 다음과 같습니다.
   2007년 1월 14일 일요일 13:18:59.9' JD = 2454115.05486
슬롯 사이트 날짜는 1900년 1월 1일 00:00:00으로 시작하며 오프셋은 2415019.500입니다.

키워드: 슬롯 사이트 언어 기능, 달력 기능, 율리우스력

소형 모델 유형 :슬롯 사이트


카테고리 : 슬롯 사이트 모델 라이브러리


메인 파일 : jdate.gms

$title 줄리안 날짜 테스트(JDATE,SEQ=292)

$onText
슬롯 사이트 함수 JDate(년,월,일)는 다음과 유사한 인수를 허용합니다.
다른 언어의 기능을 날짜로 지정합니다. 가장 빠른 날짜는 1월 1일, 1일이며
가장 늦은 날짜는 9999년 12월 31일입니다. 슬롯 사이트는 1900년 1월 1일을 1일로 선택했습니다.
Excel에서 한 것처럼. 불행히도 Excel에서는 1900년을 잘못 처리합니다.
윤년으로 지정하고 1900년 3월 1일부터 시작하는 연속일을 지정합니다.
하루만 쉬어라.

인수는 긍정적일 수도 있고 부정적일 수도 있으며 반드시 형식을 취할 필요는 없습니다.
적절한 데이트. 분수 값이 있는 인수가 먼저 변환됩니다.
Floor() 함수를 사용하여 부호 있는 정수로 변환합니다.

Excel에 대한 참고 사항:
Excel DATE(년,월,일) 함수에는 다음과 같은 데이터 범위가 있습니다.
Excel에서는 1900년을 윤년으로 잘못 처리합니다.
 날짜(1900, 1, 1) = 1
 날짜(1900, 2,28) = 59
 DATE(1900, 3, 1) = 61 정확하지 않음; 60이어야 해
 DATE(9999,12,31) = 2958465가 잘못되었습니다. 2958464 여야합니다
1900년 미만의 값을 갖는 연도의 경우 1900년 이상으로 가정됩니다.

https://en.wikipedia.org/wiki/Julian_day의 위키는 율리우스력 날짜(JD)를 정의합니다.
이후의 시간 간격(일 및 분수)
기원전 4713년 1월 1일 그리니치 정오. 예를 들어 JD 값은 다음과 같습니다.
   2007년 1월 14일 일요일 13:18:59.9' JD = 2454115.05486
슬롯 사이트 날짜는 1900년 1월 1일 00:00:00으로 시작하며 오프셋은 2415019.500입니다.

키워드: 슬롯 사이트 언어 기능, 달력 기능, 율리우스력
$offText

$eolCom //

i / 1*22 / 설정;

약어 오류;

* 다음 표에는 날짜를 입력하는 다양한 방법이 나와 있습니다.
테이블 tvals(i,*) '테스트 값'
       년 월 일 엑셀 게임
    1 2005 10 20 38645
    2 2005.3 10.3 20.3 38645
    3 2005.7 10.7 20.7 38645
    4 2005 22 20 39010
    5 2005 22 300 39290
    6 2005 -5 300 38468
    7 2005 -5 -10 38158
    8 2005 -5 -10.3 38157
    9 2005 -5 -10.7 38157
   10 2 -9 -424 0 // Excel 1900 0 1 틀림
   11 1900 1 1 1
   12 0 0 1 오류
   13 2004 2 30 38047
   14 2004 14 30 38413
   15 2004 0 0 37955
   16 9999 12 31 2958465
   17 9999 13 1 오류
   18 1900 1 2 2
   19 1899 12 31 693962 // 엑셀 3799 12 31
   20 1899 12 30 693961 // 엑셀 3799 12 30
   21 1900 2 1 32
   22 1 1 1 367 // 엑셀 1901 1 1;

매개변수 res(i) '슬롯 사이트 율리우스력 일련번호';

TVAL 표시;

* 다음은 세 가지 오류가 발생합니다
res(i) = jdate(tvals(i,'연도'),tvals(i,'월'),tvals(i,'일'));
abort$(execError <> 2) 'tval을 사용할 때 2개의 오류가 발생했어야 했습니다.';
exec오류 = 0;

tvals(i,'슬롯 사이트') = res(i);
TVAL 표시;

* abort$(execError <> 2) 'res를 사용할 때 2개의 오류가 발생했어야 했습니다.';
* execError = 0;

* 이제 날짜 구성요소를 복구하겠습니다.
매개변수 back(i,*) '복구된 날짜 구성요소';
back(i,'슬롯 사이트') = res(i);
back(i,'연도') = gyear(res(i));
back(i,'월') = gmonth(res(i));
back(i,'day') = gday(res(i));

* 오류가 있을 수 있습니다
back(i,'new') = jdate(back(i,'연도'),back(i,'월'),back(i,'일'));
abort$(execError <> 3) 'jdate를 back으로 사용할 때 3개의 오류가 발생했어야 했습니다.';
exec오류 = 0;

다시 표시;

* 슬롯 사이트 및 JD일 예시
스칼라
   JD '2007년 1월 14일 일요일 13:18:59.9' / 2454115.05486 /
   오프셋 'JD 시대와 슬롯 사이트 사이의 일수' / 2415019.500 /
   gamsjulian '슬롯 사이트 율리우스력 시대'
   julian '슬롯 사이트 일수에 맞게 조정된 JD 일수';

스칼라 연도, 월, 일, 다우, 시간, 분, 초, 밀리초;

gamsjulian = jdate(2007,1,14) + jtime(13,18,59.9);
줄리안 = JD - 오프셋;
abort$round(gamsjulian - julian,5) '율리우스력 문제', jd, offset, gamsjulian, julian;

연도 = gyear(gamsjulian);
월 = gmonth(gamsjulian);
day = gday(gamsjulian);
다우 = gdow(gamsjulian);
시간 = ghour(gamsjulian);
분 = gmin(gamsjulian);
초 = g초(gamsjulian);
millisec = gmillisec(gamsjulian);

율리우스력, 오프셋, gamsjulian, 다우, 월, 일, 연도, 시간, 분, 초, 밀리초를 표시합니다.