回 帖 发 新 帖 刷新版面

主题:新写的一个万年历(-850年~2100年)

最后写的一个万年历的算法,可以将阳历转换为阴历(公元-850年到2100年的)
为什么只到2100年呢?
解释一下: 因为这个算法到2100年以后就开始有误差(误差超过分钟了,这个
算法大约130万年就有一天的误差)
还未经过严格测试,所以编译成QLB,有问题的请回应评论,完成后再帖源代码
辛苦啊!!查了N多的资料

'       万年历(-850年~2100年)函数说明
'----------------------------------------------------------------------------
'  IsLeapYear% (Y)       返回国历Y年是否是闰年(-1是,0否)
'  IsMonthLeap(Y)        返回农历Y年是否有闰,(=0则不闰,<>0为闰月值)
'----------------------------------------------------------------------------
'  AllDay(Y,M,D)         返回自公元1年1月1日(-1)到Y年M月D日的总天数
'  AllMinute(Y,M,D,Hour,Minute)
'                        返回自Y年1月1日0时0分到M月D日Hour时Minute分的总分钟数
'  GetJieQi(Y,N)         返回Y年第N个节气的国历日期和时间(整数部分为自Y年1月1
                         日到N节气的天数,小数部分为时间,单位为天)
'  NongDay(Y,M,D)        返回Y年M月D日农历的天
'  NongMonth(Y,M,D)      返回Y年M月D日的农历月份(带负值为闰月)
'  NongYear(Y,M,D)       返回Y年M月D日农历的年份
'----------------------------------------------------------------------------
'  Week(Y,M,D)           返回Y年M月D日的星期(0为星期日)
'  Day2Year(Y,M,D)       日差天数,返回自Y年1月1日到M月D日的总天数
'  Day2Date(Y,X)         返回Y年第X天是几月几日
'----------------------------------------------------------------------------
'  YearStr(Y)            返回Y年的农历字串(如:2007 二零零七)
'  MonthStr(M)           返回M月的农历字串(如:11 十一)
'  DayStr(D)             返回D日的农历字串(如:1 初一)
'  gStr(X)               返回X天干的字串(如:1 甲)
'  zStr(X)               返回X地支的字串(如:1 子)
'  SXStr(X)              返回X生肖的字串(如:1 鼠)
'  JQStr(X)              返回X节气的字串(如:1 小寒)
'----------------------------------------------------------------------------

下载地址
http://upload.programfan.com/upfile/200703091950212.rar
下面是一个应用:
http://upload.programfan.com/upfile/200703091951320.rar

回复列表 (共5个回复)

沙发

是误差吗?

我在两年前看到的说法是:
现行的有两派历法人士对将来(某一年之后)的农历历法计算有争议.
还没有定论,然后......

不知道是不是现在有说法了?

板凳

对于历法的争议我们不必去理会,主要是的我们现在看到的历法和我们现在使用的历法
对于我们来说主要是算法的正确性!对于天文学的东西让科学家去研究

3 楼

你真是辛苦啊.......

我最近在学习怎么在个二维数组里搜索路径,你有没有好点的资料...书我倒是有.可就是看不懂了.嘿...还是以前的课本哩....当年就没学会....想了一两个星期了..试了各种方法..最后还是决定去学二叉树..我画地图.让电脑帮我搜索路是最方便的办法了.(原始的地图编辑器)..

努力奋斗中............

4 楼

去网上搜"数据结构"的书看

5 楼

下了学习使用,谢谢了

我来回复

您尚未登录,请登录后再回复。点此登录或注册