奇狐社區論壇
在這個頁面顯示本主題全部的 7 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 日期 VS 編號 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=9493)


由 peter109 在 2008-04-10 17:25 發表:

日期 VS 編號

將一年中的所有自然日 由一做起始點的連續編號
請問如何移除閏年2月的最後一天

例如 今年是閏年
2月29日 正常狀況下 編號是31+29=60
由於是閏年 今想跳過29號這天的編號
也就是說
編號60變成是3月1日的編號 並依序完成該年所有的編號

已知
//閏年的計算方法:
//除去世紀年(如1800年為18世紀……)外,凡是年數能被四除盡的就是閏年,如1948年、1952年等等。
//至於世紀年,只有世紀數能被四除盡或年數能被400除盡的,才是閏年。

__________________
至誠能勝天下至偽
至拙能勝天下至巧


由 cgjj 在 2008-04-10 18:02 發表:

回覆: 日期 VS 編號

引用:
最初由 peter109 發表
將一年中的所有自然日 由一做起始點的連續編號
請問如何移除閏年2月的最後一天

例如 今年是閏年
2月29日 正常狀況下 編號是31+29=60
由於是閏年 今想跳過29號這天的編號
也就是說
編號60變成是3月1日的編號 並依序完成該年所有的編號

已知
//閏年的計算方法:
//除去世紀年(如1800年為18世紀……)外,凡是年數能被四除盡的就是閏年,如1948年、1952年等等。
//至於世紀年,只有世紀數能被四除盡或年數能被400除盡的,才是閏年。



2月29日 可能會有交易的
除非您要將 2月29日和 3月01日 編同號
否則無法像您說的方式數號


由 cgjj 在 2008-04-10 18:08 發表:

回覆: 回覆: 日期 VS 編號

引用:
最初由 cgjj 發表
2月29日 可能會有交易的
除非您要將 2月29日和 3月01日 編同號
否則無法像您說的方式數號



將 2月29日 和 3月01日 編同號
即可達到您的需求

ny:=(year-1900)*10000;
年天:DAYS1970-DATETOD1970(ny+0101)+1;
SS:=DATETOD1970(ny+0229)-DATETOD1970(ny+0301);
年天:=年天+(date>ny+0229)*SS;


由 peter109 在 2008-04-10 18:19 發表:

謝謝版大協助

__________________
至誠能勝天下至偽
至拙能勝天下至巧


由 peter109 在 2008-05-06 21:25 發表:

日期誤差修正

延續相同概念

請問
目前計算出來的 年天 轉換成日期
存在有誤差一天(一格)
請問該如何修正此日期誤差

PS:
當月份轉換的時候 就不能直接用 年天-1

__________________
至誠能勝天下至偽
至拙能勝天下至巧


由 cgjj 在 2008-05-07 08:40 發表:

回覆: 日期誤差修正

引用:
最初由 peter109 發表
延續相同概念

請問
目前計算出來的 年天 轉換成日期
存在有誤差一天(一格)
請問該如何修正此日期誤差

PS:
當月份轉換的時候 就不能直接用 年天-1



將 2月29日 和 3月01日 編同號
既然是編同號, 就不是真正的天
故不能將編號再轉回為對應之年月日

也沒轉回的必要
就直接換改自然天數算就好嚕


由 peter109 在 2008-05-08 01:36 發表:

了解

__________________
至誠能勝天下至偽
至拙能勝天下至巧


全部時間均為台灣時間, 現在時間為14:06
在這個頁面顯示本主題全部的 7 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.