날짜와 시간을 생각할 때 과거 또는 미래의 오늘 자정입니까?


9

이것은 항상 나에게 퍼즐이며, 그것은 그것이 프로그래밍이나 소프트웨어 개발에서 엄격하게 문제가 아니라는 것을 우리의 분야에서 합리적인 것으로 보입니다.

예를 들어, 만료 날짜 시간을 2011-04-08 00:00:00으로 설정하고 현재 현지 시간이 8 일 10:45 인 경우 이미 만료 되었습니까? 아니면 여전히 반나절 정도 남아 있습니까?

하루 중 자정에 속하는 표준이 있습니까?

아니면 영국 군대에서 잎을 가져 와서 하루가 23:59:59에 끝나고 00:00:01에 시작하고 자정이 없다고 말해야합니까?


잠깐만, 당신의 위치는 어디입니까? 지금 무슨 날짜입니까? 08 또는 07?
Sufendy

sry – 내가 이미 8 일에 있다는 것을 분명히했다. (나는 SA에있는 애들레이드에있다)
HorusKol

1
기본적으로 00:00:00이 10:45:00보다 크거나 작습니까?
Martin York

나는 잎을 가져갈 것이다. 일정을 다루는 많은 조직은 00:00:00 (및 12:00:00)을 피합니다. 24 시간 시계를 사용하지 않는 국가의 AM / PM 지정자에 대해서도 혼동이 있습니다.
dbasnett

일부 상황에서는 24:00:00하루가 끝나는 자정을 설명하는 데 사용됩니다.
코드 InChaos

답변:


17

나는 프로그래밍 (오라클과 PHP, 다른 언어는 확실하지 않음)에서 자정은 하루의 시작이라고 생각합니다. 예를 들어 trunc (sysdate)를 사용하면 2011-04-08 00:00:00이됩니다.

따라서 시계가 23:59:59에서 00:00:00으로 변경되면 날짜가 실제로 2011-04-08에서 2011-04-09로 변경되었습니다.


2
예, 하루는 자정 (00:00:00)에 롤오버됩니다.
quick_now

이것은 올바른 AFAIK입니다. 혼란 스러울 수도 있습니다. 일상 연설에서 "오늘 자정"은 아마도 오늘 말일 자정을 의미 할 것입니다. 왜냐하면 사람들이 깨어 난 후에보다 사람들이 잠자리에 들기 전일 가능성이 더 높기 때문입니다.
잭 V.

3

@Phelios의 답변에 대한 부록, 00:00:00과 같은 시간이 있다면 반드시 자정이 아닐 수도 있습니다. 오히려, 모두 최대 1 초 미만의 거리를 갖는 것은 무한정 큰 시점입니다. 예를 들어, 00 : 00 : 00.345, 00 : 00 : 00.567 및 00 : 00 : 00.842는 모두 자정의 새 시간대에 명확하게 표시되지만 표시 목적으로 "00:00:00"으로 단축됩니다. 마찬가지로 23 : 59 : 59 : 899는 자정의 옛편에 있습니다. 따라서 자정 자체는 실제로 절대로 맞지 않을 날들 사이의 무한한 짧은 시간입니다.


이것은 차이 불러 중요 한 시간 의 이론 과 '주장' 연습 : 에서 연습 간신히 초를 입력 방해 할 수있는 날짜 / 시간을 입력하는 사용자를; 밀리 초는 물론입니다. 실제로 이벤트 시간을 결정하는 타이밍 장치는 밀리 초를 지원하지 않을 수 있습니다. 실제로 타이밍 장치가 밀리 초를 지원하더라도 어떤 이유로 인해 스토리지 형식이 시간의 일부를 반올림 / 잘라 내지 않는다는 보장은 없습니다.
환멸

1

이것은 원형 지오메트리를 사용하여 각도 간의 차이를 계산하는 것과 비슷한 문제입니다. 예를 들어 0도 및 360도 (및 720도 등)는 모두 동일합니다. 350도에서 10 도의 차이는 무엇입니까?

답 : 측정하려는 주변의 방법에 따라 다릅니다. 20도 또는 340 도일 수 있습니다. 그러나 각도 차이 계산은 실제로 매우 지저분합니다. 평범한 덧셈과 뺄셈을 일반적으로 수행하는 내부 형식으로 변환하지 않는 한 시차 계산은 비슷하게 복잡합니다. 또는 현대적인 클래스 라이브러리를 사용하여 마술처럼 숨길 수 없습니다 (따라서 실제 세부 사항에 대해 아무도 가르치지 않습니다).


두 경우 모두 시계 (또는 원)의 한 방향 만 '긍정적'으로 지정하십시오.
HorusKol

진실. 그러나 계산을 수행하고 매번 올바르게 처리하는 코드를 작성하려면 약간의 생각이 필요합니다.
quick_now
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.