农历是怎样计算的啊?

[复制链接]
查看11 | 回复1 | 2011-12-20 04:11:24 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-12-20 04:11:24 | 显示全部楼层
农历的年、月、日是按照公式计算而来的,不像西历时强行规定哪月是大月,哪月是小月。要计算大小月、平闰年、闰月放在什么位置,都要按照公式来。下面我们来给出计算的公式。年份的计算1由西元年份推算天干地支:农历年份数减3,除以10的余数是天干,除以12的余数是地支。例如:(2010-3)mod10=7,所以天干是“庚”(2010-3)mod12=3,所以地支是“寅”。2.积日的计算(用于月份的计算):当年的1月0日换算为积日,可以用年份减去1900得到的年数被4整除,所得商数作为y(D4),余数作为y(M4),y(M4)为零的年份是公历闰年,积日是D(1)=1461*y(D4)-1y(M4)不为零的年份是公历平年,积日是D(1)=1461*y(D4)365*y(M4)月份的确定计算前一年冬至的积日F(0),并用F(0)计算冬至所在的朔月m及其朔日M(0),就可以推算冬至的农历日期,冬至所在的农历月份总是十一月。计算下一个中气F(1)和下一个朔日M(1),如果F(1)M(1),那么该月就是上一个月的闰月,并把这个中气作为F(2),以后的中气、朔日和农历月份也这样确定。朔日的计算(确定大小月)从1900年开始的第m个朔日的公式是M=1.629.5306*m0.4*sin(1-0.45058*m)这个公式的误差在0.2天左右。节气的计算(确定闰月)先给节气进行编号,从近日点开始的第一个节气编为0,编号如下及其相应的月份如下:0小寒腊月6清明三月12小暑六月18寒露九月1.大寒腊月7谷雨三月13大暑六月19霜降九月2.立春正月8立夏四月14立秋七月20立冬十月3.雨水正月9小满四月15处暑七月21小雪十月4.惊蛰二月10芒种五月16白露八月22大雪冬月5.春分二月11夏至五月17秋分八月23冬至冬月把当天和1900年1月0日(星期日)的差称为积日,那么第y年(1900年算第0年)第x个节气的积日是F=365.242*y6.215.22*x-1.9*sin(0.262*x)这个公式的误差在0.05天左右。赞同
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行