« M:i:III | メイン | 夏休み日記(1日目) »
2006年08月18日
日付計算
アルゴリズムに悩み中。
ものすごく簡単なことなんだけど、計算オーダーの少なさと設計のシンプルさを重点したくて
概要:基準の日付、日数の差を指定した時の日付を知りたい。
入力: 日付、日数差(出来れば負も)←この数値はかなりでかい。
出力: 日付
※ 日付は { 年、月、日 } で構成。
ただ、これだけなんだけど、毎年ぐるぐるとうるう年計算して差を縮めるしか思いつかない・・・。
誰か、綺麗なモジュール設計を自慢してくれませんか?
(今、思いついたのは400年or100年or4年離れているか、で計算が有力・・・)
投稿者 toki : 2006年08月18日 00:20
トラックバック
このエントリーのトラックバックURL:
http://chrono.s9.xrea.com/MT/mt-tb.cgi/224
コメント
1970年以降で良ければepochからの日付を使う。
daysToDate((dateToDays(年, 月, 日) + 差)
使えるか知らんけど、mktime() とかあればすぐだと思う。
投稿者 da01 : 2006年08月19日 00:55
あ、ライブラリは利用できない状況で・・・
ライブラリを作るイメージです。
基本的な制御構文しかないスクリプト上で書く感じです。
投稿者 Toki : 2006年08月19日 03:33