- 主题:公历转农历怎么个计算方法?
看看政府规定吧
https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=E107EA4DE9725EDF819F33C60A44B296
【 在 myuyan 的大作中提到: 】
: 没有中气的月要闰月,就这个规则?
--
FROM 129.227.142.*
“阳历(格里高利历)是算术历,所有的日期都是根据公式计算的”,不正确。
阳历和阴历没有区别,都是用算术法表达自然规律。
你的天、月、年,都是整数数字。这跟自然规律对不上。因为月球、地球的自转、公转,都不是整数天,而是无限不循环小数。
用公式是不可能计算出公历的,因为所有的计算都是近似法。只要把时间拉得足够长,都要依靠置闰等人工干预的方法强行对应。
为什么农历看上去误差更大?因为农历是一个更完备的历法,既要考虑月地关系,又要考虑日地关系,还要都转换成整数表达。
即使是纯粹的阴历,误差也更大,因为月相变化周期是29.53059天,它和整数的误差关系是0.5。因为我们考察的单位是年,所以这个误差要乘以12。
地球公转周期是365日6时9分10秒,以年为衡量标准,本身的误差比例就小。
【 在 z16166 的大作中提到: 】
: 阳历(格里高利历)是算术历,所有的日期都是根据公式计算的
: 农历是天文事件历,根据观察到的天文事件来定日期的
: 农历这个计算代码,github上是不少的,但star高的貌似没看到?因为这个在英语为主的代码世界里算是小众的
: ...................
--
FROM 223.70.167.*
楼主以为自己的代码可以运行很多年
其实能跑个一两年就可以了
【 在 ZhangShao 的大作中提到: 】
: RT
: 暂时不考虑用什么编程语言,只是问问计算方法是什么?
: --
: 仙乡云水足生涯,摆橹横舟便是家。活剖鲜鳞烹绿鳖,旋蒸紫蟹煮红虾。
: 青芦笋,水荇芽,菱角鸡头更可夸。娇藕老莲芹叶嫩,慈菇茭白鸟英花。
:
:
发自「今日水木 on 鸿蒙」
--
FROM 99.105.57.*
格里高利历就是算术历,长篇大论之前先把基本事实搞对
【 在 ssava 的大作中提到: 】
: “阳历(格里高利历)是算术历,所有的日期都是根据公式计算的”,不正确。
: 阳历和阴历没有区别,都是用算术法表达自然规律。
: 你的天、月、年,都是整数数字。这跟自然规律对不上。因为月球、地球的自转、公转,都不是整数天,而是无限不循环小数。
: ...................
--
FROM 111.198.57.*
如果是查表,那么可以购买紫金山天文台的《大众万年历》(1901年-2100年),这个就是官方标准
代码方面最好的应该是sxwnl寿星万年历,纯js代码
如果要自己写的话,可以参照sxwnl的基本逻辑:
1. 定气和定朔(确定各节气、每个月初一的具体时间)
sxwnl是用天文数据数学推导出来的(定气法要考虑椭圆轨道)
也可以考虑到大众万年历里面找一下有官方算出来的节气时间、朔日时间,直接录入
2. 在确定了节气和朔日之后,就简单了
不存在节气中偶数的中气的月,设置为闰月,这样顺序排下来所有月、日
【 在 ZhangShao 的大作中提到: 】
: RT
: 暂时不考虑用什么编程语言,只是问问计算方法是什么?
: --
: 仙乡云水足生涯,摆橹横舟便是家。活剖鲜鳞烹绿鳖,旋蒸紫蟹煮红虾。
: 青芦笋,水荇芽,菱角鸡头更可夸。娇藕老莲芹叶嫩,慈菇茭白鸟英花。
:
:
发自「今日水木 on iOS」
--
FROM 123.124.194.*
查表
之前见过一个html的万年历,不需要联网
【 在 ZhangShao 的大作中提到: 】
: RT
: 暂时不考虑用什么编程语言,只是问问计算方法是什么?
--
FROM 114.247.88.*
除了置闰,还有定朔,也就是确定大小月的问题,这个可能更加复杂。农历中的大小月是根据实际天象来确定的,虽然也可以预测但没有简单的规律可循(因为地、月公转轨道都是椭圆而不是正圆),哪个月大哪个月小普通人是根本搞不清的,农历里面可以出现连续四个大月你信吗?
【 在 myuyan 的大作中提到: 】
: 没有中气的月要闰月,就这个规则?
--
FROM 159.226.155.*
当然不是算术历。
因为不可能通过计算得出准确的结果。
【 在 eggcar 的大作中提到: 】
: 格里高利历就是算术历,长篇大论之前先把基本事实搞对
:
--
FROM 223.70.167.*
一直以为大月小月是间隔出现的
【 在 stogow (stogow) 的大作中提到: 】
: 除了置闰,还有定朔,也就是确定大小月的问题,这个可能更加复杂。农历中的大小月是根据实际天象来确定的,虽然也可以预测但没有简单的规律可循(因为地、月公转轨道都是椭圆而不是正圆),哪个月大哪个月小普通人是根本搞不清的,农历里面可以出现连续四个大月你信吗?
:
: 【 在 myuyan 的大作中提到: 】
: : 没有中气的月要闰月,就这个规则?
--
FROM 111.164.173.*
可能我没表述清楚。你可以搜一下Arithmetic calendar、Astronomical calendar
阳历也是存在调整的
【 在 ssava 的大作中提到: 】
: “阳历(格里高利历)是算术历,所有的日期都是根据公式计算的”,不正确。
: 阳历和阴历没有区别,都是用算术法表达自然规律。
: 你的天、月、年,都是整数数字。这跟自然规律对不上。因为月球、地球的自转、公转,都不是整数天,而是无限不循环小数。
: ...................
--
FROM 221.218.160.*