台灣最大程式設計社群網站
線上人數
453
 
會員總數:231089
接案會員:6781
文章總數:2319
討論主題:175362
歡迎您免費加入會員
討論區列表 >> Script >> 農曆年,月日 對應 天干地支的問題
[變換順序]
[我要回覆]
1


回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
農曆年,月日 對應 天干地支的問題
價值 : 300 QP  點閱數:5290 回應數:15

樓主

窒息的小羊
中級顧問
44523 65
16623 5468
發送站內信

捐贈 VP 給 小羊窒息
最近在寫這種判斷程式...

但是在Google找不到比較制式化的說明
有些網站說農曆本身沒公式, 有些網站提供了現成的農民曆網頁(複雜的JavaScript)
例如 http://eservice.csc.com.tw/a5/b9/csc/module/lunar.htm

目前, 我只知道... 1864年, 是 甲子年...然後60年一輪

而月份跟日期...就真的沒軋了...

例如:
2006年 11月1日...
是農曆的 [ 95年 9 月 11 日 ]
也就是 [ 丙戌年 戊戌月 甲午日 ] (我只算的出年,而且是直接減1864去判斷 @_@)

請有經驗的大大說明一下吧
(頭好痛哦...)
本篇文章發表於2006-11-02 01:29
[再難的程式,當你知道怎麼寫時,就很簡單,問題就在於不知道怎麼寫]
[當你辛辛苦苦,嘔心瀝血,寫出一支你覺得沒有人寫的出來的程式時,
你會發現,早就已經有人寫出來了,不但寫的更好,而且還提供Source Code]

厚黑學之鋸箭法:
鋸箭法是說有人中了箭,請外科醫生治療,
外科醫生把箭幹鋸了,然後就說弄好了,剩下的箭頭請找內科醫生…
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

呆呆喵
捐贈 VP 給 呆呆喵 檢舉此回應
易經不知道會不會有講到這個東西. . . .(感覺我好像來亂的)....

本篇文章回覆於2006-11-02 08:44
--未登入的會員無法查看對方簽名檔--
2樓
回應

lsk
捐贈 VP 給 lsk 檢舉此回應
聽說是很複雜我就放棄了(我有試著寫過),有閏年閏月閏日一堆的
目前我還沒有看到很完整的,目前的都有有效年限
幾年以後就不準了
如果真的寫出來,一定可以賣錢

本篇文章回覆於2006-11-02 08:49
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

呆呆喵
捐贈 VP 給 呆呆喵 檢舉此回應
找了一些相關的,不知道能不能幫得上忙
不過看樣子你的東西研究起來似乎很花時間~~~
http://www.geocities.com/tatmingc/lunarcw.html
http://www.bookzone.com.tw/Publish/book.asp?bookno=WS040


本篇文章回覆於2006-11-02 08:54
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
根據 福山堂的說明...
http://www.fushantang.com/1012/j0023.html

我所做的.......月的計算方式

按天干五合的方法,分成五種情況,即甲、己之年 定月的方法相同

1│2│3│4│5
甲│乙│丙│丁│戊
己│庚│辛│壬│癸

正月的地支必為[寅]月, 因此需定天干

1900年 庚子年 由於 庚年在2, 故從[乙]再走2格 [經過 丙, 丁] 到戊, 因此正月為 [戊寅]月, 二月為[己卯]月...(其餘跟年的計算相同, 天干地支各加1)
1901年 辛丑年 由於 辛年在3, 故從[丙]再走3格 [經過 丁, 戊, 己] 到庚, 因此正月為 [庚寅]月
1970年 庚戌年 由於 庚年在2, 故從[乙]再走2格 [經過 丙, 丁] 到戊, 因此正月為 [戊寅]月, 二月為[己卯]月
1998年 戊寅年 由於 戊年在5, 故從[戊]再走5格 [經過 己, 庚, 辛, 壬, 癸] 到甲, 因此正月為 [甲寅]月

(在走的時候,一樣是 甲│乙│丙│丁│戊│己│庚│辛│壬│癸│甲│乙│的順序在走的,並不是走到戊之後就回到甲)
==================================

還在看日要怎麼算...@_@

總之...麻煩的要命...

本篇文章回覆於2006-11-02 09:42
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
我目前找到1個算農曆日期的 asp程式,
大概還看的懂, 也稍微加了一點料, 用來判斷[日]的 天干地支
只可惜它只能從1921年2月8日起算(這一天是農曆1月1日)...



這支是在大陸找到的...


==========================
繼續努力的改吧.....@_@

本篇文章回覆於2006-11-02 10:49
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
這2天找了一堆資料,

總算知道NongliData(0) ~ (99)裡面的數字是怎麼來的了...@_@

以後可能會有人來找這類的資料, 我就寫一下好了...
將其每個值轉換成 2進位, 得到的就是每一年的 1 ~ 12月的 大月小月(大月30日, 小月29日,....1是大月, 2是小月)

是NongliData(0) = 2635來說
其2進位是 1 0 1 0 0 1 0 0 1 0 1 1
也就是說1月是30日, 2月是29日, 6月是30日..
而樓上的程式, 只能由1921年2月8日開始, 也就是說, NongliData(0) 是1921年的...

因此, 如果要把1921年以前, 或者2021年以後的加上去...
可以去找萬年曆來抄...其他年的月份都規則都抄下來, 再去增加NongliData的值...


(弄到後面, 還是要把一堆資料寫死.....)

不過至少知道怎麼把上面的程式擴建了...


本篇文章回覆於2006-11-03 17:01
--未登入的會員無法查看對方簽名檔--
7樓
不錯的參考

無智慧可言
檢舉此回應
我2年前瘋這個寫過了,還不賴拉,那時候還是個初學者,只要將http://eservice.csc.com.tw/a5/b9/csc/module/lunar.htm
四柱八字都寫出來了,裡面的javascript轉成c#或vb就可以達到囉,不過你必須要了解農曆的算法......
還有最好能對照一下萬年曆.....
NongliData(0) = 2635 確實是個重點,她分別制定大小月的格式.....
至於天干地支的排法,我是自己算的...訪間有很多書可以參考
訪間有很多算法,大部份都是有節氣,所以節氣的函式很重要,決定於日期準不準....
不過我不採用節氣,我學的方法跟訪間不同.不過還一樣準......加油啦
這個能推算出來,以後你寫其它程式就覺得沒什麼難的....
要做這個東西要花時間,最好有書並且要學會,寫出來才不會有誤差
為了寫這個我買了10本書對照.......目的就是要準啦....加油

本篇文章回覆於2006-11-06 12:16
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
我目前測試資料的參考網頁,
就是看 http://eservice.csc.com.tw/a5/b9/csc/module/lunar.htm 的
不過我沒有用他裡面的寫法(曾經試著要弄到完全懂, 不過太辛苦了...最後選擇以#5的計算方式來做...

目前輸入日期之後, 所查出來的資料, 還算正確(剩下的就是一測再測了...)

本篇文章回覆於2006-11-06 16:01
--未登入的會員無法查看對方簽名檔--
9樓
不錯的參考

無智慧可言
檢舉此回應
如果不加節氣的話,妳寫出來的東西會跟坊間網站上的不一樣喔
日期會有誤差......妳可以查一下你的農曆新年前後的日期,看看是不是跟上面妳給的網址出來的一樣
還有閏年的時候,日期會出錯,妳try try 看吧

本篇文章回覆於2006-11-07 11:41
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
的確.... 用2006年 11月7日...算出來的天干地支就跑掉了@_@

( 真痛苦 ......... 我再研究看看 )

本篇文章回覆於2006-11-07 13:51
--未登入的會員無法查看對方簽名檔--
11樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
我發現會算錯是我自己筆誤.... 地支是12進位...我除以10...@_@

至於日期,
我大概試了一下 (1944年有閏月)
1944/1/24 , 1944/1/25
1945/2/12 , 1945/2/13
1999/2/15 , 1999/2/16
2006/1/28 , 2006/1/29

沒發現什麼異常, 可否請教一下[那個節氣]的用途在哪裡呢?
我看了那個說明文字, 實在是不曉得要怎麼用在 天干地支的比較...

==============================================================
農曆的計算, 其臨界值好像不是只要找農曆的12月31日跟1月1日來比較而已.....
不曉得還有哪些臨界值要測
(閏月的起始日跟結束日好像也不是關鍵...)

本篇文章回覆於2006-11-07 14:04
--未登入的會員無法查看對方簽名檔--
12樓
回應

呆呆喵
捐贈 VP 給 呆呆喵 檢舉此回應
to無智慧可言
好可怕啊,為了研究這個你買了10本書,在下很好奇,請問有從中間得到什麼啟示嗎???

本篇文章回覆於2006-11-07 14:09
--未登入的會員無法查看對方簽名檔--
13樓
回應

呆呆喵
捐贈 VP 給 呆呆喵 檢舉此回應
再請問一下樓上2位大大,你們是要做算命用的嗎?

本篇文章回覆於2006-11-07 14:14
--未登入的會員無法查看對方簽名檔--
14樓
作者回應

窒息的小羊
捐贈 VP 給 小羊窒息 檢舉此回應
我是要算天干地支........

不過這種東西除了用來算命, 做農民曆之外...好像真的沒第三種用途了

本篇文章回覆於2006-11-07 14:45
--未登入的會員無法查看對方簽名檔--
15樓
最有價值解答

無智慧可言
檢舉此回應
每年的節氣不同,主要是以國曆輸入後準確的對到農曆,你不加入節氣,也是可以算啦,不過你真的要懂怎麼推算天干地支,四柱,大運
小運,不想花大把錢,就得看書找資料,我寫了一年,為了求準,我想算命軟體要做的準,不然會誤人,是要付因果的....
希望你能仔細不要急著寫完它,多多參考書籍,懂了再寫,弄懂不會太久,每天下功夫
農曆的12月30為準是每年開始的臨界值(後20天年干推的準,程式就算成功了)
但是真正走當年的運時,卻是從立春開始

TO:呆呆喵 對呀,做來玩的啦....呵......如果你比我們懂,請多多指教給點意見.....感謝喔


本篇文章回覆於2006-11-07 15:37
--未登入的會員無法查看對方簽名檔--
[變換順序]
1
 

回覆
如要回應,請先登入.