注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

贵州省静心池易学研究所

主理 任洪德 1836182827@163.com

 
 
 

日志

 
 

农历算法简介以及公式  

2017-01-16 16:59:43|  分类: 易学原理 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

农历算法简介以及公式

有关农历的东西有以下几篇文章:

计算某天是星期几【C代码】

农历算法简介以及公式

农历中天干地支的计算【C代码】

农历一百年算法(1921~2021)【C语言代码】

农历两百年算法(1901~2100)【C语言代码】

一、节气的计算 

  先给节气进行编号,从近日点开始的第一个节气编为0,编号如下及其相应的月份如下:

0 小寒 腊月

 清明 三月

12 小暑 六月

18 寒露 九月

1 大寒 腊月

 谷雨 三月

13 大暑 六月

19 霜降 九月

2 立春  正月

 立夏 四月

14 立秋 七月

20 立冬 十月

3 雨水 正月

 小满 四月

15 处暑 七月

21 小雪 十月

4 惊蛰 二月

10 芒种 五月

16 白露 八月

22 大雪 冬月

5 春分 二月

11 夏至 五月

17 秋分 八月

23 冬至 冬月

把当天和1900年1月0日(星期日)的差称为积日,那么第y年(1900年算第0年)第x 个节气的积日是
       F = 365.242 * y + 6.2 + 15.22 * x - 1.9 * sin(0.262 * x) 
这个公式的误差在0.05天左右。 
二、朔日的计算 
  从1900年开始的第m个朔日的公式是 
       M = 1.6 + 29.5306 * m + 0.4 * sin(1 - 0.45058 * m) 
这个公式的误差在0.2天左右。 
三、年份的确定 
  1864年1月0日是农历癸亥年,所以用当年减去1864,用10除得的余数作为年份天干的,用12除得的余数作为年份的地支,数字对应的天干和地支如下。

数字

0

1

2

3

4

5

6

7

8

9

10

11

天干

 

 

地支

当年的1月0日换算为积日,可以用年份减去1900得到的年数被4整除,所得商数作为 y(D4),余数作为y(M4),y(M4)为零的年份是公历闰年,积日是 
       D(1) = 1461 * y(D4) - 1 
y(M4)不为零的年份是公历平年,积日是 
       D(1) = 1461 * y(D4) + 365 * y(M4) 
四、月份的确定 
  计算前一年冬至的积日F(0),并用F(0)计算冬至所在的朔月m及其朔日M(0),就可以推算冬至的农历日期,冬至所在的农历月份总是十一月。计算 下一个中气F(1)和下一个朔日M(1),如果F(1)

  评论这张
 
阅读(5)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017