古人曾以干支记录生日算年龄有时要做应用题

说起过生日,2月29日出生的人可能有点郁闷,他们4年才能过一回生日。可是,如果把庆生视为人生一大乐事,古人的“悲催”显然要比现代人多。他们以干支纪日记忆生日,为过一个生日,他们要等的可能不止4年。

算年龄有时要做应用题

中国人很早就开始记忆自己的出生日期,不过最初是以干支纪日的形式记录的。公元前4世纪,著名诗人屈原在《离骚》中写道:“摄提贞于孟陬兮,惟庚寅吾以降”,意思是说自己出生于寅年正月的庚寅日。这里的“庚寅”就是中国古人用来纪日的方式。

干支是天干与地支的合称,有甲乙丙丁等十天干,子丑寅卯等十二地支。这两者可以组合搭配成60对,为一个周期,循环往复。

两汉以前,历史记录中的日期都是以干支纪日的方式出现的,这直接决定了出生日期的记录方式。例如,鲁庄公出生于公元前706年9月丁卯,与其父鲁桓公同月同日,因此取名为姬同。如果按照数字纪日,这父子两人的出生日期并不相同。

《左传》中还记载了一位老者给官员出的算术应用题。

公元前543年,晋悼公的夫人向国人发放救济粮,绛县有一个老人前来领取。负责的小吏询问他的年纪,他回答道:“我只是一个地位卑下的小民,不知道如何计算年岁。只记得我出生在正月甲子日,那是一个朔日,到现在第445个甲子已经过去1/3了。”

小吏不知道如何计算,就去请教当朝的高官。大夫师旷说:“我知道了,那是73年前,那一年狄国侵犯了鲁国。”文伯说:“到今天26660天了。”即444乘以60,再加上60的1/3,得26660天。

这个故事反映出,当时的普通人对于自己的出生日期也是有记忆的,同样是以干支的形式。

也许等6年才能过上一个生日

干支记录的出生日期不利于产生生日的概念。

首先,中国的传统历法以月亮的盈亏周期作为一月,并与阳历的节气相结合,是典型的阴阳合历。战国以前,虽然天文历法可以预先排定历谱,但由于天文学不发达,往往还需要根据实际天象进行调整。例如某日在预先排定的历谱中是月末的晦日,但当日发生了日食,实际上是下月的朔日(月亮与太阳同时出没的日子,在天文学中严格的定义是日月同黄经的时刻为朔)。

在农历中,朔被定为一个月的起始,那么政府就可能修改历谱,重新确定其所属月份,下月的日期若以数字表示,就会全部改变。此外,闰月的安插在战国以前也显得没有固定规律。这种情况下,以数字形式排定日期并不实用。

其次,在传统历法中,一个历月只有29天或30天,而一甲子却有60天。这就可能出现连续多年某月没有某个干支日期的情形,如果连续5年的9月没有甲子日,那么,这个人也许6年才能过上一个生日。

这样,以出生日期来确定自己的年岁就显得很不方便。所以中国人最初是以农历的新年作为自己年岁加增的生命周期刻度,这一传统一直延续至今。

汉代以后,历法有了很大的进步,人们根据天象可以较为准确地推算出今后多年的历谱,这就为数字纪日的产生准备了前提条件。在东汉时期的《四民月令》中,就出现了“七月四日”这样的数字日期。

魏晋南北朝时期,数字纪日逐渐流行,而生日概念的产生,恰恰也在此时。随着历法的不断完善,每天的日期也能够可靠地提前确定下来,以年为循环周期的生日概念也就在齐梁时期产生了。

逢19整数倍岁数农历和公历是同一天

与农历对应的是公历。公历对于中国人来说,是个外来事物。到目前为止,中国使用公历也仅仅有100多年的历史。

虽然公历现在使用得相当广泛,但由于农历对中国人的影响是根深蒂固的,所以当人们提到生日时,往往会同时记起自己的农历和公历的生日。

公历生日和农历生日的关系,有一个有趣的19年周期。例如,公元1984年1月1日是农历11月29日,19年后的2003年1月1日的农历日期又是11月29日。这主要是两种历法的置闰规则产生的结果。

农历的朔望月周期是29.5306日,一般“十九年七闰”,即19年有235个月。如此算来,19个农历年平均有6939.691日。而现行公历的年长为365.2422日,19个公历年平均有6939.6075日。

可见,19个公历年的日数和19个农历年的日数几乎相等。因此,每逢19的整数倍岁数时,公历生日和农历生日很可能与19年前一模一样地重合在一起。

但也不一定都这样,因为农历和公历置闰并不同步,也可能会使两者在19年后相差一天。特别是在出生前不久恰巧遇上农历闰月时,可能就差得更多了。例如,1984年有闰十月,1985年1月1日的农历日期是11月11日,而19年后,2004年1月1日的农历日期则变成了12月10日,与19年前几乎相差一个月。

生日几何和命运没直接关系

十二生肖是由动物纪年法演变而来。以动物纪年的方法,最初曾流行于我国北部从事游牧的少数民族中,后来又和干支纪年法相融合,于是就产生了“十二生肖”之说。由于我国早期采用干支纪日、纪年,所以一个人出生的时刻也就对应着一定的干支,进而又演化出了“生辰八字”。

“生辰八字”和人的生肖,原是我国古代人民一种记忆出生日期的方法,但在古代宿命论思想的影响下,后来这“生辰八字”和“十二生肖”都被涂上了一层浓浓的神秘色彩,甚至掺进了迷信思想。

其实,世界上那些同一时辰出生的人何止千万,但他们的命运有好有坏,寿命有长有短,人生道路各有不同,甚至双胞胎也有着不同的人生轨迹,这也说明了所谓命运同生辰八字根本毫无关系。

还有人认为,生日与节气也有着密切的关系。当下在年轻人中非常流行的生日与星座的关系也经常被人们津津乐道。事实上,“八字”也好,属相也好,节气也好,抑或是西方的生日星座等,都不能决定人的命运。

说来说去,其实哪天过生日并不重要,重要的是,生日那天,别忘了提醒自己:“盛年不重来,一日难再晨。及时当勉励,岁月不待人。”

THE END
1.农历计算方法探秘(农历如何计算)问题:农历 如何计算 答案: 农历,又称阴历或农事历,是中国传统历法之一。它以月亮的阴晴圆缺为基础,结合太阳的运行规律来安排时间。农历的计算方法较为复杂,主要包括以下几个方面: 1.朔望月的计算:农历以朔望月为单位,一个朔望月是指月亮从朔(月相为新月)到下一个朔的时间。平均而言,一个朔望月的长度约为29.5https://www.zaixianjisuan.com/jisuanzixun/nonglijisuanfangfatanmi.html
2.农历年份对照表中国农历年天干地支排列表 十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸。十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戍、亥 1999年1月9日 农历是几月几日出生年份对照表 农历十一月十二 农历表除年份多少年一轮 六十年 公元一九二九年十二月日历阳历阴历对照表 https://www.lishixinzhi.com/bb/327522.html
3.“真太阳时”和”北京时间“已经相关太阳,时间,历法的知识再则,现行的农历版本是什么版本?它是明末清初的《时宪历》法,于1645年农历乙酉鸡年(今年是360周年)正式使用的。说了农历的版本,您别认为这是清朝的老黄历了,落后了,请往下看,中国现行的农历,是农历是由我国科学院紫金山天文台利用现今最精确的农历数据算出和排出的,他们使用的是现代先进轨道计算方法计算的,不再https://www.douban.com/note/76229594/
4.科学网—张启斌创立的中华太阳历介绍大衍答:应该有,我想应该可追述到轩辕黄帝历那里,可惜中国古六历均已失传。但是,可以肯定的是,中国阴阳合历,即我们现在所使用的包括24节气在内的中国农历之元年,应该就是元丰七年(西元前104年)的《太初历》元年。 编辑问:中国阴历没有元年的纪年方法,怎样计算其循环呢? https://blog.sciencenet.cn/home.php?mod=space&do=blog&id=1226563
5.算法系列之二十:计算中国农历(一)农历算法算法系列之二十:计算中国农历(一) 本文介绍了中国农历的历法规则,包括阴阳历的结合、天干地支纪年法、闰月的设置原理以及农历与二十四节气的关系。农历以月相为基础,通过置闰月协调与回归年的差异。天干地支纪年法通过天干(10个)和地支(12个)组合,每60年一个轮回。农历的闰月依据“十九年七闰”或更精确的“中气https://blog.csdn.net/orbit/article/details/9210413
6.java知道日期计算农历mob64ca12f062df的技术博客农历是中国传统的日历系统,它以农业为基础,根据太阳和月亮的运行周期来计算日期。与阳历不同,农历的月份和日期是根据阴阳历表来确定的,所以每年农历的日期是变化的。在 Java 中,我们可以使用一些方法来计算给定日期的农历日期。 在本文中,我们将介绍如何使用 Java 来计算农历日期,并提供一些代码示例来帮助理解。 https://blog.51cto.com/u_16213431/8928302
7.四中国农历——干支历从干支纪法角度看,二者都使用了同样的干支名称,计算方法也是一样的。并且,二者的日、时干支完全相同。这是因为,不管是农历还是干支历,都是由黄帝历发展并延续而来。区别在于,二者年干支和月干支的起算、结束日期不同。 所以,这里介绍的干支历和农历干支纪法的算法,可以互为借用。 https://www.meipian.cn/2ll5x9cy
8.中国农历常识大全日历内容最多最杂,真正的“大杂烩”就体现于此,其内容主要包括:公历日期;星期;当日时令(如上下弦、二十四节气、朔望、各种节日等);当日吉、凶神煞;农历初几;干支;纳音五行;八卦;每日卦运;所值九星;二十八星宿;十二直;当日宜忌;当日冲煞;当日胎神;当日吉、凶时等。现就某版本黄历的编排顺序将其所列内容简述https://www.360doc.cn/mip/1125160374.html